UrlManager не хочет обрабатывать путь с кириллицей

Общие вопросы по использованию фреймворка. Если не знаете как что-то сделать и это про Yii, вам сюда.
Ответить
andrew68
Сообщения: 20
Зарегистрирован: 2013.08.31, 15:01

UrlManager не хочет обрабатывать путь с кириллицей

Сообщение andrew68 »

Есть проблема описанная здесь. Если коротко, то UrlManager - rules не срабатывает на URL, если в параметрах есть кириллица(utf-8), если латиница, то правило обрабатывается.

Полез дебажить CUrlManager.php и выяснилось, что в функцию CUrlRule::parseUrl приходят вполне однозначные параметры, но почему-то preg_match возвращает FALSE.

Код: Выделить всё

if(preg_match($this->pattern.$case,$pathInfo,$matches))

...
#пример
if(preg_match("/^tmer\/brand\/(?P<id>\w+)\/$/u", "tmer/brand/Ашан/",$matches))
 
Нативно всё срабатывает нормально

Код: Выделить всё

<?php
   preg_match("/^tmer\/brand\/(?P<id>[\w\%]+)\/$/u", "tmer/brand/Ашан/", $m);
   print_r($m);
?>
Но Yii обрабатывать это правило ни в какую не хочет. Хотелось бы услышать разработчиков по этому поводу.
igor3310
Сообщения: 75
Зарегистрирован: 2015.07.24, 10:33

Re: UrlManager не хочет обрабатывать путь с кириллицей

Сообщение igor3310 »

Подскажите решение пожалуйста
Ответить