Я пытаюсь получить изображения с удаленного сервера с помощью file_get_contents
. URL-адрес изображения может содержать пробелы и/или специальные символы, такие как ý, á, í и т. Д., И когда он выполняет операцию с кодом HTTP 400 - Bad Request. Если я попытаюсь закодировать URL-адрес (или сегменты этого URL-адреса), используя urlencode
или rawurlencode
, я получаю код 404.file_get_contents - специальные символы в URL
Когда URL-адрес изображения не содержит пробелов или специальных символов, он загружается без проблем.
У меня есть догадка, что это имеет какое-то отношение к кодированию, но я просто не могу понять это. Есть ли вариант кодирования, который мне не хватает? Есть ли заголовок, который должен быть установлен для запроса?
http://stackoverflow.com/questions/2236668/file-get-contents-breaks-up-utf-8-characters –
alickus: Это на самом деле не дубликат, связанный с вами вопрос касается UTF-8 в контенте ответа, а не URL-адреса. – Kaivosukeltaja
Откройте это изображение в своем браузере. Посмотрите, как браузер кодирует URL. Затем просмотрите вывод 'echo urlencode ($ url);' и найдите отличия – galymzhan