Иногда приходится расширять Application, чтобы добавить новый функционал В данном случае - регистронезависимый поиск для sqlite // Файл: components/MyWebApp.php function ci_utf8_like($mask, $value) { $mask = str_replace( array("%", "_"), array(".*?", "."), preg_quote($mask, "/") ); $mask = "/^$mask$/ui"; return preg_match($mask, $value); } class MyWebApp extends CWebApplication { public function init() { setlocale(LC_ALL,'ru_RU.UTF-8'); mb_internal_encoding("UTF-8"); mb_regex_encoding("UTF-8"); parent::init(); $b = Yii::app()->db->pdoInstance->sqliteCreateFunction('like', "ci_utf8_like", 2); $L = isset(Yii::app()->session['lang'])? Yii::app()->session['lang'] : ''; if (in_array($L,array('ru','en'))) Yii::app()->language = $L; Yii::app()->name = Yii::app()->params[Yii::app()->language.'_name']; } } // class Старт нового приложения делается в index.php: $webapp = dirname(__FILE__).'/protected/components/MyWebApp.php'; require_once($webapp); Yii::createApplication('MyWebApp',$config)->run();
Yii Справочник v0.05 © 2007-2024 Igor Salnikov aka SunDoctor