Цитата |
---|
Артур Нойманн пишет: Не, с аватаркой вышло, а с фоткой не вышло |
Ясно, ввел в заблуждение своим urlencode. Предложил я верно, но кодировалась вся строка, соответственно адрес получался невалидным весь. Надо как-то так:
Код |
---|
$url = '.....';
$url = preg_replace_callback('/[а-яА-Я]+/uis', function($matches){return urlencode($matches[0]);}, $url);
ec(CFile::MakeFileArray($url)); |
То есть - берем именно каждую русскую букву и реплейсим на ее кодированное представление. (к сожалению, какой-то полноценной замены в виде одной функции не нашел)
Проверил - у меня работает. Единственное, что если в таких адресах встретится еще что-то необычное (например, немецкий умляут), то опять будет сбой и паттерн а-яА-Я надо будет расширять.