PHP tmpfile () возвращает false

У меня есть сценарий загрузки изображений, который ранее работал. Теперь он сломан, и я проследил проблему до одной строки:

$temp = tmpfile(); // $temp === false 

Функция tmpfile () возвращает false. Я не могу понять, почему. Мне тяжело пробираться через Google на этом.

Сценарий он только разбился на моей локальной тестовой среде, OSX 10.6.7, запущен MAMP 1.9.5. К счастью, сайт работает нормально.

tmpfile () возвращает false если он не может создать временный файл. Убедитесь, что ваша папка tmp sys_get_temp_dir() для записи, и попробуйте проверить, что возвращает функция sys_get_temp_dir() .

Это может быть проблема с разрешениями. Используйте sys_get_temp_dir() чтобы увидеть, где будет создан файл temp, и убедитесь, что php имеет доступ к записи там.

Во-первых, включите все предупреждения PHP, чтобы узнать, говорит ли он вам что-то.

Во-вторых, проверьте свою временную папку и убедитесь, что PHP имеет к ней доступ на запись. Возможно, что определенные ограничения «безопасного режима» (базовые каталоги и т. Д.) Препятствуют доступу.

В моем случае в папке, в которой она пыталась создать файл, были файлы temp, вплоть до tmpFFFF.tmp. После того как вы переместили эти временные файлы из папки, он снова вернулся к tmp1.tmp.