PHP Glob не возвращает все / любые файлы

Я на машине WIN 10. Выполнение небольшого PHP-скрипта для собственного использования (не для загрузки).

Мой код:

    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 x txt файла).

Я изменил его на следующее, в котором должны отображаться все файлы, включая сценарии PHP, но он по-прежнему показывает только 1 файл, а затем останавливается.

     glob("*.*") 

Есть что-то глупое, что я делаю неправильно - почему он не перебирает все файлы (или все текстовые файлы)?

РЕДАКТИРОВАТЬ - Версия PHP 7.1.9


person G Stewpot    schedule 17.09.2017    source источник
comment
что показывает print_r () вместо цикла foreach?   -  person    schedule 17.09.2017
comment
print_r показывает все файлы - если я изменяю глобус, print_r правильно показывает новый список, который соответствует.   -  person G Stewpot    schedule 17.09.2017
comment
Цикл foreach показывает значение [0] - первое значение.   -  person G Stewpot    schedule 17.09.2017
comment
так что это не шар в ссоре   -  person    schedule 17.09.2017


Ответы (1)


РЕШЕНО.

Это было:-

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

Должен быть

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

Я нашел здесь ответ: -

Foreach показывает только последний элемент в массиве

Я не знаю, ПОЧЕМУ это происходит, но ненужная точка с запятой отображает только 1 значение / ключ массива.

(мне нужны глаза получше), но я думаю, что другие тоже этого не видели.

person G Stewpot    schedule 17.09.2017