PHP:函数不返回数组

PHP:函数不返回数组,php,Php,有人能帮我吗?我看不见。下面的函数不返回数组。print\r($list)(在return上方)在屏幕上打印阵列。但是,print\r($files)返回一个空数组 function listFolderFiles($dir){ $ffs = scandir($dir); $i = 0; $list = array(); foreach ( $ffs as $ff ){ if ( $ff != '.' && $ff != '..'

有人能帮我吗?我看不见。下面的函数不返回数组。
print\r($list)
(在
return
上方)在屏幕上打印阵列。但是,
print\r($files)
返回一个空数组

function listFolderFiles($dir){
    $ffs = scandir($dir);
    $i = 0;
    $list = array();
    foreach ( $ffs as $ff ){
        if ( $ff != '.' && $ff != '..' ){
            if ( strlen($ff)>=5 ) {
                if ( substr($ff, -4) == '.mp4' ) {
                    $value = $dir.'/'.$ff;
                    $list[] = $value;
                }
            }
            if( is_dir($dir.'/'.$ff) )
                    listFolderFiles($dir.'/'.$ff);
        }
    }

    print_r($list);  // Returns the full array with values
    return $list;
}
$files = listFolderFiles($_POST['path']);
print_r($files) // Returns an empty array..... :(:(

递归调用不处理返回的数组:

listFolderFiles($dir.'/'.$ff);
您需要在此处合并阵列:

$list = array_merge($list, listFolderFiles($dir.'/'.$ff) );

递归调用不处理返回的数组:

listFolderFiles($dir.'/'.$ff);
您需要在此处合并阵列:

$list = array_merge($list, listFolderFiles($dir.'/'.$ff) );

递归调用不处理返回的数组:

listFolderFiles($dir.'/'.$ff);
您需要在此处合并阵列:

$list = array_merge($list, listFolderFiles($dir.'/'.$ff) );

递归调用不处理返回的数组:

listFolderFiles($dir.'/'.$ff);
您需要在此处合并阵列:

$list = array_merge($list, listFolderFiles($dir.'/'.$ff) );


那是什么<代码>($_POST('path'))?打字错误
$\u POST['path']
我的错误是,在发布问题时输入了一个错误。但是,它写在PHP文件中,所以仍然不起作用。我注意到$list返回的数组是数组的两倍。。。。。一个满了,一个空了。也许它运行listFolderFiles的次数太多了?那么,当您这样运行它时,会同时调用
print\r
s,其中一个会打印出所需的输出,而另一个不会?
POST
值是否可能未到达/不正确?我猜它在
if(Is_dir($dir./'.$ff))
部分中找到了一些内容。但是你忽略了它的返回值,那是什么<代码>($_POST('path'))?打字错误
$\u POST['path']
我的错误是,在发布问题时输入了一个错误。但是,它写在PHP文件中,所以仍然不起作用。我注意到$list返回的数组是数组的两倍。。。。。一个满了,一个空了。也许它运行listFolderFiles的次数太多了?那么,当您这样运行它时,会同时调用
print\r
s,其中一个会打印出所需的输出,而另一个不会?
POST
值是否可能未到达/不正确?我猜它在
if(Is_dir($dir./'.$ff))
部分中找到了一些内容。但是你忽略了它的返回值,那是什么<代码>($_POST('path'))?打字错误
$\u POST['path']
我的错误是,在发布问题时输入了一个错误。但是,它写在PHP文件中,所以仍然不起作用。我注意到$list返回的数组是数组的两倍。。。。。一个满了,一个空了。也许它运行listFolderFiles的次数太多了?那么,当您这样运行它时,会同时调用
print\r
s,其中一个会打印出所需的输出,而另一个不会?
POST
值是否可能未到达/不正确?我猜它在
if(Is_dir($dir./'.$ff))
部分中找到了一些内容。但是你忽略了它的返回值,那是什么<代码>($_POST('path'))?打字错误
$\u POST['path']
我的错误是,在发布问题时输入了一个错误。但是,它写在PHP文件中,所以仍然不起作用。我注意到$list返回的数组是数组的两倍。。。。。一个满了,一个空了。也许它运行listFolderFiles的次数太多了?那么,当您这样运行它时,会同时调用
print\r
s,其中一个会打印出所需的输出,而另一个不会?
POST
值是否可能未到达/不正确?我猜它在
if(Is_dir($dir./'.$ff))
部分中找到了一些内容。但您忽略了它的返回值。@ErikVandeVen我更新了答案,请像这样尝试。@ErikVandeVen我更新了答案,请像这样尝试。@ErikVandeVen我更新了答案,请像这样尝试。@ErikVandeVen我更新了答案,请像这样尝试。