24.02.2021, 12:27 | #1 |
Эксперд
Доцент
Регистрация: 28.07.2020
Сообщений: 199
Сказал(а) спасибо: 581
Получил(а) "Спасибо": 317
Нарушения: 0/0 (0)
Репутация: 243913
|
Как в PHP конвертировать частично кирилический url?
Есть урлы типа http://site.ru/%D0%B7%D0%B0%D0%BF%D1...B0%D0%BB%.html и file_get_contents () никак не хочет с ними работать. Перепробовал несколько вариантов из поиска - не работает. Как эти кракозябры довести до нужного вида?
|
24.02.2021, 12:32 | #2 |
Думаю, что надо худеть
Академик
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 632655
|
Re: Как в PHP конвертировать частично кирилический url?
Это стандартный url_decode.
И с этими кракозяблами все функции должен работать, что-то не так в настройках сервера у вас. Может нет самой локали русской, или вы её не включили, или не включил никакую локаль - EN тоже корректно обрабатывать должна. |
Сказали спасибо: |
24.02.2021, 12:41 | #3 |
Эксперд
Доцент
Регистрация: 28.07.2020
Сообщений: 199
Сказал(а) спасибо: 581
Получил(а) "Спасибо": 317
Нарушения: 0/0 (0)
Репутация: 243913
|
Re: Как в PHP конвертировать частично кирилический url?
|
24.02.2021, 12:46 | #4 |
Думаю, что надо худеть
Академик
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 632655
|
Re: Как в PHP конвертировать частично кирилический url?
Я не знаю гдде оно там, это к админам, или разрабам этого чуда.
А вы можете просто перебрать список всех что есть и попытаться найти. Ознакомьтесь с описанием php функции setlocale, как перебрать все локали и найти нужную. Я вообще стартую с такой инструкции: Код:
@setlocale(LC_ALL, array('ru_RU.UTF-8', 'ru_RU.utf8', 'rus_RUS.UTF-8', 'Russian_Russia.65001', 'ru_RU', 'en_US')); |
Сказали спасибо: |
24.02.2021, 12:54 | #5 |
Думаю, что надо худеть
Академик
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 632655
|
Re: Как в PHP конвертировать частично кирилический url?
Васо Вчеразаши, А. ту теще один вопрос по ссылке - она именно такая, потому что там % голый перед .html, урл битый такой. Или это просто кусок пример, а сама ссылка рабочая в реальности используется?
|
24.02.2021, 12:58 | #6 |
Эксперд
Доцент
Регистрация: 28.07.2020
Сообщений: 199
Сказал(а) спасибо: 581
Получил(а) "Спасибо": 317
Нарушения: 0/0 (0)
Репутация: 243913
|
Re: Как в PHP конвертировать частично кирилический url?
|
24.02.2021, 13:01 | #7 |
Думаю, что надо худеть
Академик
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 632655
|
Re: Как в PHP конвертировать частично кирилический url?
Васо Вчеразаши, стартуйте php код со строки локали, которую я выше указал. И не надо приводить к кирилице - так и получайте потом.
|
24.02.2021, 13:29 | #8 |
Эксперд
Доцент
Регистрация: 28.07.2020
Сообщений: 199
Сказал(а) спасибо: 581
Получил(а) "Спасибо": 317
Нарушения: 0/0 (0)
Репутация: 243913
|
Re: Как в PHP конвертировать частично кирилический url?
Короче выяснилось, что на том сайте защита от нубов, которые с file_get_contents что-то получить хотят. Но все равно спасибо, а то я бы еще полдня грешил на кирилицу!
|
24.02.2021, 13:32 | #9 |
Работаю ⌛
Доцент
Регистрация: 10.07.2020
Сообщений: 162
Сказал(а) спасибо: 6
Получил(а) "Спасибо": 250
Нарушения: 0/0 (0)
Репутация: 138205
|
Re: Как в PHP конвертировать частично кирилический url?
Всегда для внешних ресурсов используйте CURL, file_get_contents оставьте только для локальных файлов.
|
24.02.2021, 13:35 | #10 |
Эксперд
Доцент
Регистрация: 28.07.2020
Сообщений: 199
Сказал(а) спасибо: 581
Получил(а) "Спасибо": 317
Нарушения: 0/0 (0)
Репутация: 243913
|
Re: Как в PHP конвертировать частично кирилический url?
|