> 백엔드 개발 > PHP 튜토리얼 > 关于这个mkdir()的错误我没想明白

关于这个mkdir()的错误我没想明白

WBOY
풀어 주다: 2016-06-23 14:38:28
원래의
878명이 탐색했습니다.


$img = array(    "./web/su.bdimg.com/static/superpage/css/../img/spis_9762e054.png",    "./web/su.bdimg.com/static/superpage/css/../img/baidu_fm_gif_72f357cc.gif",    "./web/su.bdimg.com/static/superpage/css/../img/guide_sprite_df6dde4a.png",    "./web/su.bdimg.com/static/superpage/css/../img/cite_sprite_121e6560.png",    "./web/su.bdimg.com/static/superpage/css/../img/hotnews_ac6c5b7e.png",    "./web/su.bdimg.com/static/superpage/css/../img/hotnews_ie_ca7d3ffd.png");foreach($img as $v){	$a=dirname($v);	echo $a,'<br/>';	if(!file_exists($a) && mkdir($a,0777,true)){		echo $a.'<font color="green">路径创建成功</font><br/>';	}}
로그인 후 복사


回复讨论(解决方案)

file_exists检查文件是否存在
要检查目录应当用is_dir 不然你那个检查无效。第二次循环的时候 就会报 文件目录已存在的警告!

@mkdir($a,0777,true) 这样也可以,但是楼上说的很对。
로그인 후 복사
로그인 후 복사

file_exists检查文件是否存在
要检查目录应当用is_dir 不然你那个检查无效。第二次循环的时候 就会报 文件目录已存在的警告!
知道原因了。必须先建./web/su.bdimg.com/static/superpage/css/
才能建./web/su.bdimg.com/static/superpage/css/../img

@mkdir($a,0777,true) 这样也可以,但是楼上说的很对。
로그인 후 복사
로그인 후 복사
知道原因了。必须先建./web/su.bdimg.com/static/superpage/css/
才能建./web/su.bdimg.com/static/superpage/css/../img
谢谢二位,@尽量少用,很危险,貌似。

file_exists检查文件是否存在
要检查目录应当用is_dir 不然你那个检查无效。第二次循环的时候 就会报 文件目录已存在的警告! file_exists能检查目录的


file_exists检查文件是否存在
要检查目录应当用is_dir 不然你那个检查无效。第二次循环的时候 就会报 文件目录已存在的警告! file_exists能检查目录的
file_exists是可以检查文件目录是否存在
不过你的mkdir带了第三个参数,可以嵌套创建文件目录的。

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿