Форум об интернет-маркетинге
Вернуться   Форум об интернет-маркетинге > Технические вопросы > Веб-строительство

Ответ
 
Опции темы
Старый 24.02.2021, 12:27   #1
Васо Вчеразаши
Эксперд
Доцент
 
Аватар для Васо Вчеразаши
 
Регистрация: 28.07.2020
Сообщений: 198
Сказал(а) спасибо: 575
Получил(а) "Спасибо": 309
Нарушения: 0/0 (0)
Репутация: 243913

Thread Starter Как в 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
XPraptor
Думаю, что надо худеть
Академик
 
Аватар для XPraptor
 
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 608321

По умолчанию Re: Как в PHP конвертировать частично кирилический url?

Это стандартный url_decode.
И с этими кракозяблами все функции должен работать, что-то не так в настройках сервера у вас.
Может нет самой локали русской, или вы её не включили, или не включил никакую локаль - EN тоже корректно обрабатывать должна.
Состояние бота google и полезные ресурсы: всё про гугл
XPraptor вне форума   Ответить с цитированием
Сказали спасибо:
Старый 24.02.2021, 12:41   #3
Васо Вчеразаши
Эксперд
Доцент
 
Аватар для Васо Вчеразаши
 
Регистрация: 28.07.2020
Сообщений: 198
Сказал(а) спасибо: 575
Получил(а) "Спасибо": 309
Нарушения: 0/0 (0)
Репутация: 243913

Thread Starter Re: Как в PHP конвертировать частично кирилический url?

Цитата:
Сообщение от XPraptor Посмотреть сообщение
Может нет самой локали русской, или вы её не включили
Где в опенсервере эта локалка русская?
Васо Вчеразаши вне форума   Ответить с цитированием
Старый 24.02.2021, 12:46   #4
XPraptor
Думаю, что надо худеть
Академик
 
Аватар для XPraptor
 
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 608321

По умолчанию 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'));
Обратите последняя локлаь en_US она точно должна быть и она корректно обработает эти кракозяблы тоже.
XPraptor вне форума   Ответить с цитированием
Сказали спасибо:
Старый 24.02.2021, 12:54   #5
XPraptor
Думаю, что надо худеть
Академик
 
Аватар для XPraptor
 
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 608321

По умолчанию Re: Как в PHP конвертировать частично кирилический url?

Васо Вчеразаши, А. ту теще один вопрос по ссылке - она именно такая, потому что там % голый перед .html, урл битый такой. Или это просто кусок пример, а сама ссылка рабочая в реальности используется?
XPraptor вне форума   Ответить с цитированием
Старый 24.02.2021, 12:58   #6
Васо Вчеразаши
Эксперд
Доцент
 
Аватар для Васо Вчеразаши
 
Регистрация: 28.07.2020
Сообщений: 198
Сказал(а) спасибо: 575
Получил(а) "Спасибо": 309
Нарушения: 0/0 (0)
Репутация: 243913

Thread Starter Re: Как в PHP конвертировать частично кирилический url?

Цитата:
Сообщение от XPraptor Посмотреть сообщение
Или это просто кусок пример, а сама ссылка рабочая в реальности используется?
Именно так.
PHP код:
$url urldecode($url); 
действительно приводит ссылку в читаемый вид на кирилице, но file_get_contents (); всеравно не работает.
Васо Вчеразаши вне форума   Ответить с цитированием
Старый 24.02.2021, 13:01   #7
XPraptor
Думаю, что надо худеть
Академик
 
Аватар для XPraptor
 
Регистрация: 22.06.2020
Сообщений: 1,791
Сказал(а) спасибо: 1,526
Получил(а) "Спасибо": 1,939
Нарушения: 0/0 (0)
Репутация: 608321

По умолчанию Re: Как в PHP конвертировать частично кирилический url?

Васо Вчеразаши, стартуйте php код со строки локали, которую я выше указал. И не надо приводить к кирилице - так и получайте потом.
XPraptor вне форума   Ответить с цитированием
Старый 24.02.2021, 13:29   #8
Васо Вчеразаши
Эксперд
Доцент
 
Аватар для Васо Вчеразаши
 
Регистрация: 28.07.2020
Сообщений: 198
Сказал(а) спасибо: 575
Получил(а) "Спасибо": 309
Нарушения: 0/0 (0)
Репутация: 243913

Thread Starter Re: Как в PHP конвертировать частично кирилический url?

Короче выяснилось, что на том сайте защита от нубов, которые с file_get_contents что-то получить хотят. Но все равно спасибо, а то я бы еще полдня грешил на кирилицу!
Васо Вчеразаши вне форума   Ответить с цитированием
Старый 24.02.2021, 13:32   #9
leonidukg
Работаю ⌛
Доцент
 
Аватар для leonidukg
 
Регистрация: 10.07.2020
Сообщений: 162
Сказал(а) спасибо: 6
Получил(а) "Спасибо": 250
Нарушения: 0/0 (0)
Репутация: 138205
Отправить сообщение для leonidukg с помощью ICQ

По умолчанию Re: Как в PHP конвертировать частично кирилический url?

Всегда для внешних ресурсов используйте CURL, file_get_contents оставьте только для локальных файлов.
leonidukg вне форума   Ответить с цитированием
Старый 24.02.2021, 13:35   #10
Васо Вчеразаши
Эксперд
Доцент
 
Аватар для Васо Вчеразаши
 
Регистрация: 28.07.2020
Сообщений: 198
Сказал(а) спасибо: 575
Получил(а) "Спасибо": 309
Нарушения: 0/0 (0)
Репутация: 243913

Thread Starter Re: Как в PHP конвертировать частично кирилический url?

Цитата:
Сообщение от leonidukg Посмотреть сообщение
CURL
Чейта каракули отдает, как в CURL кодировку указать?
Васо Вчеразаши вне форума   Ответить с цитированием
Ответ

Опции темы

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.

Быстрый переход


Текущее время: 00:11. Часовой пояс GMT +3.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc. Перевод: zCarot