PHP Glob不返回所有/任何文件

问题描述:

我在WIN 10机器上。为我自己使用(不上传)做一个小的PHP脚本。PHP Glob不返回所有/任何文件

我的代码是:

echo getcwd() . "<br />\n"; 
    $files=glob("*.txt"); 
    $log=1; 
    krsort($files); 
    reset($files); 
    foreach($files as $ab => $ac); 
    { 
    $ac=trim($ac); 
    echo "'$ab' '$ac'<br />\n"; 
    $got=trim($ac); 
    } 

的目录路径是正确的,但是它返回一个文件(有3×txt文件的目录)。

我将其更改为以下应显示所有文件 - 包括PHP脚本,但它仍然只显示1个文件&然后停止。

 glob("*.*") 

有什么愚蠢的,我做错了 - 为什么不是它通配符的所有文件(或所有TXT文件)?编辑 - PHP版本7.1.9

+0

而不是foreach循环,print_r()显示什么? – rtfm

+0

print_r显示所有文件 - 如果我更改glob,print_r正确显示匹配的新列表。 –

+0

foreach循环显示[0]值 - 第一个值。 –

已解决。

它是: -

 foreach($files as $ab => $ac); 
    { 

应该

foreach($files as $ab => $ac) 
    { 

我在这里找到了答案: -

Foreach only showing last item in array

我不知道为什么这样做,但不需要的分号仅显示数组的1个值/键。

(我需要更好的眼睛),但我想其他人也没有看到它。