Я использую функцию PHP 5 scandir ($ dir), чтобы перебрать каталог и распечатать список файлов xml. Только когда в каталоге есть одна кавычка в имени, scandir не возвращает никаких элементов! Он не возвращает false (как в случае сбоя) и не генерирует предупреждения или ошибки - просто пустой. Есть идеи?
$items = scandir(stripslashes($dir)); //strip slashes in case magic_quotes are on if($items === false) die("scandir returned failure"); print_r($items)
Я протестировал его на Windows, и он работал нормально. Попробуйте echo $dir;, чтобы убедиться, что это то, что вы ожидаете.
echo $dir;
Также, используйте ini_set(), чтобы убедиться, что ваш уровень ошибки достаточно высок:
ini_set()
ini_set('error_reporting', E_ALL);
Проверено ли, что пользователь, выполняющий сценарий, имеет разрешения на чтение для целевого каталога?