#php #macos
#php #macos
Вопрос:
Я давний разработчик (C / C / Objective-C / Pascal / assembler), который, наконец, решил, что пришло время изучать PHP.
Я пишу несколько ОЧЕНЬ простых скриптов, чтобы попытаться передать данные в приложение, которое я разрабатываю на Objective C для iOS.
Сейчас я ввожу URL-адрес для вызова моего скрипта в моем браузере, а затем просматриваю результат.
У меня есть код, который получает имя каталога из запущенного скрипта. Я могу добавить подкаталог («/ files») в этот каталог, а затем добавить имя файла из вызывающего URL, чтобы создать полный путь к моему файлу (например, «/ Library/ Server/Web/Data/Sites/Default/files/image.png»)
Если я установлю тип заголовка и использую readfile($filePath)
, я могу отобразить изображение в окне моего браузера, поэтому я знаю, что путь правильно сформирован.
Мой следующий шаг — перебрать все файлы в каталоге «/files». Я хочу создать сообщение JSON, которое сообщает моему приложению о содержимом файла.
Однако я не могу заставить команду @ # $ @# $ opendir
работать, чтобы спасти мою жизнь.
Если я выполню эту строку:
$handle = opendir($files_dir)
Мой скрипт не запускается. Я знаю, что значение в $files_dir
правильно сформировано, потому что, как я уже сказал, я могу использовать его для построения пути к файлу и отображения этого файла без проблем.
Я пытался добавить балансирующий вызов closedir($handle)
, но, похоже, это не имеет значения.
Я запускаю свой скрипт на сервере OSX от Apple. Я могу запустить его, вызвав его из браузера или выполнив команду GET из моего тестового приложения в iOS … если я не попытаюсь использовать opendir() .
Что здесь может быть не так ?!? Я очень расстраиваюсь.
Комментарии:
1. КАК происходит сбой? мы не можем помочь вам всего одной строкой кода.
2. Возможно, вы захотите рассмотреть лучшее название.
3. Есть ли какие-либо сообщения об ошибках от этого? Добавьте
ini_set('display_errors',1);
в начало вашего скрипта, и они должны появиться, если их еще нет.4. Вы хотите сохранить файл?
opendir
для этого не требуется5. @MarcB, сбой, так как я не получаю никаких выходных данных в окне моего браузера. Частично проблема в том, что я привык работать с IDE и отладчиком исходного кода. Я не знаю, как определить, как это происходит. Я просто не получаю выходных данных.
Ответ №1:
Хорошо, я чувствую себя действительно глупо. Мне не хватало точки с запятой. Это была синтаксическая ошибка, простая и понятная. Вздох…