我一直在关注readdir(),is_dir()等教程,这些教程是基于FTP上的文件夹和文件设置小型图库。我想知道$ directorys [] = $文件;部分具体是吗?
while($file= readdir($dir_handle))
{
if(is_dir($file)){
$directorys[] = $file;
}else{
$files[] = $file;
}
}
我一直在关注readdir(),is_dir()等教程,这些教程是基于FTP上的文件夹和文件设置小型图库。我想知道$ directorys [] = $文件;部分具体是吗?
while($file= readdir($dir_handle))
{
if(is_dir($file)){
$directorys[] = $file;
}else{
$files[] = $file;
}
}
它将一个项目推送到数组而不是array_push
,它只会将一个项目推送到数组。
使用array_push
和$array[] = $item
的工作原理相同,但使用array_push
并不理想,因为它适合于推送阵列中的多个项目。
实施例:
Array (
)
这样$array[] = 'This works!';
或array_push($array, 'This works!')
后它会出现这样的:
Array (
[0] => This works!
)
您也可以推阵列到一个数组,像这样:
$array[] = array('item', 'item2');
Array (
[0] => Array (
[0] => item
[1] => item2
)
)
它添加了目录到directory
阵列:)
if(is_dir($file)){
$directorys[] = $file; // current item is a directory so add it to the list of directories
}else{
$files[] = $file; // current item is a file so add it to the list of files
}
但是如果你使用PHP 5我真的建议使用DirectoryIterator
。
顺便说一句,$file
真的很糟糕,因为它并不总是一个文件。
它在数组的末尾创建一个新的数组元素并为其分配一个值。
$文件将包含已扫描项目的名称。在这种情况下,使用is_dir($ file)可以检查当前目录中的$文件是否是目录。
然后,使用标准阵列追加操作符[]中,$文件名或目录名添加到$文件/ $ directorys阵列...
$directory
是一个数组。
代码
$directory[] = $file
增加$file
到$directory
数组的末尾。这与
array_push($directory, $file)
相同。在array_push
更多信息以phpdocs
因此,您的代码读取文件/文件夹列表,并将它们分为两个数组:$ directorys和$ files – MrGlass 2012-01-09 20:26:22
感谢这有助于为对方回复了很多,谢谢。 – crm 2012-01-09 20:34:58