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