Home > Backend Development > PHP Tutorial > 关于这个mkdir()的错误我没想明白

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

WBOY
Release: 2016-06-23 14:38:28
Original
874 people have browsed it


$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/>';	}}
Copy after login


回复讨论(解决方案)

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

@mkdir($a,0777,true) 这样也可以,但是楼上说的很对。
Copy after login
Copy after login

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

@mkdir($a,0777,true) 这样也可以,但是楼上说的很对。
Copy after login
Copy after login
知道原因了。必须先建./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带了第三个参数,可以嵌套创建文件目录的。

source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template