您好,欢迎访问一九零五行业门户网

一段php代码,程序能运行,但同学说我代码有问题,求大神指点一下



回复内容:

需要吐槽的地方太多:
其实有比scandir()更好用一点的遍历函数,那就是 glob,起码两个array_shift()和一个记录前缀的$str就完全不用了。
ms_sc()函数都没有return值,我并不觉得能echo出所有的子目录,起码我没看出来,可能我眼拙了吧。
这个是最值得吐槽的了,那个explode是怎么回事,要有多丑就有多丑,看着这样的代码简直愁死了。
最后建议多看看手册,手册上已经有很多写的很好的代码了,比如用scandir()的这个代码写的就比你漂亮多了,然后这个代码就是用glob()的直接就比上一个代码少了一步,把这个代码浓缩精简恶趣味一下就是:
function r($d) { foreach(glob($d/*) as $f) is_dir($f) ? r($f) : unlink($f); return rmdir($d);}
首先你先别怪没人给你回答,没人回答是应该的(除了我正好现在闲的蛋疼。。)
别的不说,变量名都是a、b、c、d是怎么个情况。。变量名要有意义,起码看起来方便得到所有子目录路径是应该的,外层的if(is_dir($d))就是过滤出目录,还不明白就去搞清楚递归最后我很想问一句,你写的这段程序你真的能理解么?(里面的函数都是干什么用的?两个foreach循环分别是干什么的?为什么不先删目录,然后删文件?)慢慢来,啥东西都是从无到有
其它类似信息

推荐信息