Как парсить подобные ссылки:
<?php echo file_get_contents('http://synonymonline.ru/П/прекрасный'); ?>
пробовал с urlencode и rawurlencode, iconv - ничего не помогает
Нельзя просто взять ссылку и пропустить ее целиком через urlencode() или rawurlencode(). На выходе вы получите уже не ссылку.
Для вашего случая нужно выделить из ссылке path, разбить его на составляющие, их прогнать через функцию rawurlencode() и собрать все назад. Пример:
$arr = parse_url('http://synonymonline.ru/П/прекрасный');
$link = $arr['scheme'] . '://'
. $arr['host']
. implode('/',
array_map('rawurlencode',
explode('/', $arr['path'])
)
);
echo file_get_contents($link);
P.S. Если у вас домен будет содержать символы отличные от латинских, то его придется переводить в формат IDNA ASCII с использованием idn_to_ascii()
Современные инструменты для криптотрейдинга: как технологии помогают принимать решения
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости