Неверный синтаксис имени файла, имени каталога или метки тома. (код: 123)

Я осознаю:

Неверный синтаксис имени файла, имени каталога или метки тома. (код: 123)

У меня есть функция ниже:

public static function countDirectoryFiles($dir){
        $i = 0;
        if ( $handle = opendir($dir) )
        {
            while ( ($file = readdir($handle)) !== false )
            {
                if (!in_array($file, array('.', '..')) && !is_dir($dir.$file))
                    $i++;
            }
        }
        // prints out how many were in the directory
        return $i;
    }

и ошибка возникает в функции opendir и говорит:

opendir(D:\wamp\www\abc\public/frontend/images/альбомы/temp_storage_for_gallery/user_1/thumbnail/,D:\wamp\www\abc\public/frontend/images/альбомы/temp_storage_for_gallery/user_1/thumbnail/)

тогда как D:\wamp\www\gillie\public/frontend/images/albums/temp_storage_for_gallery/user_1/thumbnail/ существует, и я несколько раз проверял его в проводнике Windows.

Я использую laravel 5.2, который не имеет ничего общего с этой ошибкой, используя windows7.

Я начал получать эту ошибку внезапно, так как тот же код работал нормально последние 3-4 месяца.

Я искал об этом в Интернете, но ничего не помогло.

Обновить Когда я запускаю непосредственно под кодом:

print(opendir('D:\wamp\www\abc\public\frontend\images\albums\temp_storage_for_gallery\user_1\thumbnail')); 

Я получил:

Resource id #469

Любое руководство будет оценено!


person Alwaysalearner    schedule 12.01.2017    source источник


Ответы (1)


После еще некоторого времени отладки я узнал, что разбил путь, который хранился в $dir, на no. строк для улучшения читаемости и уменьшения длины строк. Из-за этого в этот путь по ошибке был вставлен пробел, поэтому возникла проблема.

person Alwaysalearner    schedule 12.01.2017