Skip to content

Commit de52af8

Browse files
helper service
1 parent 26e667b commit de52af8

File tree

1 file changed

+25
-1
lines changed

1 file changed

+25
-1
lines changed

services/Helper.php

+25-1
Original file line numberDiff line numberDiff line change
@@ -247,5 +247,29 @@ public function dir_mkdir($path = '', $mode = 0777, $recursive = true)
247247

248248
return true;
249249
}
250-
250+
251+
252+
253+
public function scanAllDirSubFile($dir, $subDir='/')
254+
{
255+
if(is_dir($dir)){
256+
$files = array();
257+
$child_dirs = scandir($dir);
258+
foreach ($child_dirs as $child_dir){
259+
//'.'和'..'是Linux系统中的当前目录和上一级目录,必须排除掉,
260+
//否则会进入死循环,报segmentation falt 错误
261+
if($child_dir != '.' && $child_dir != '..'){
262+
if(is_dir($dir.'/'.$child_dir)){
263+
//$files[$child_dir] = my_scandir($dir.'/'.$child_dir);
264+
$files = array_merge($files, $this->scanAllDirSubFile($dir.'/'.$child_dir, $subDir.$child_dir.'/'));
265+
}else{
266+
$files[] = $subDir.$child_dir;
267+
}
268+
}
269+
}
270+
return $files;
271+
}else{
272+
return $subDir.$dir;
273+
}
274+
}
251275
}

0 commit comments

Comments
 (0)