Столкнулся с проблемой, нужно было прочитать содержимое папки, которая находится в сети. Например, для поиска в удалённой папке файлы по маске. Штатные функции opendir и glob не помогали. Я перепробовал всё: и подключал сетевой диск, и вызывал консольные команды, и попытался задействовать Windows Scripting через COM. Ничего не помогало.
Оказалось, чтобы заработали функции glob и opendir с сетевыми ресурсами Windows нужно сделать 2 вещи:
- Запускать apache от имени пользователя с правами администратора
- Установить локальную политику безопасности «Сетевой доступ: запретить анонимный доступ к именованным каналам и общим ресурсам» в отключено. Или выставить её в реестре: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\LanmanServer\Parameters\RestrictNullSessAccess = 0
Вот и всё. Плохо, конечно, что Apache запускается от имени администратора.
Ссылки по теме: https://bugs.php.net/bug.php?id=25805