Разбор URL
Предположим у нас имеется следующий путь: http://host.ru/index.php?r=admin
echo Yii::app()->getRequest()->getHostInfo(); // http://host.ru echo Yii::app()->homeUrl; // /index.php echo Yii::app()->getRequest()->getUrl(); // /index.php?r=admin
Пути
- Yii::getFrameworkPath() — путь до фреймворка
- Yii::getPathOfAlias(‘system.test’) — алиаса для пути:
- system — каталог «..framework»
- zii — до «..frameworkzii»
- webroot — корень проекта ($_SERVER[‘DOCUMENT_ROOT’])
- application — каталог «..protected»
- ext — каталог «..protectedextensions»
Пример использования алисов. Например надо в layouts воспользоваться renderPartial:
$this->renderPartial('application.modules.admin.views.layouts._menu_core');
Ссылка
Yii::app()->createUrl('/modul/model/deisvo') CHtml::link("Ссылка", array('/modul/model/deisvo'));
Chtml
echo Chtml::encode('</div>'); // Кодируем html символы CHtml::link("Ссылка", array('/modul/model/deisvo')); // Ссылка
База данных
Выполнить команду
$sql =' UPDATE ser_1c_car_model sccm SET sccm.status = :status_new WHERE sccm.uses_1c > 1 AND sccm.status = :status_old '; $connection=Yii::app()->db; $command=$connection->createCommand($sql); $command->bindParam(':status_new', $a = self::STA_LOAD, PDO::PARAM_INT); $command->bindParam(':status_old', $b = self::STA_NO_USES, PDO::PARAM_INT); $command->execute();
Селект
... $dataReader = $command->query(); while(($row= $dataReader->read())!==false){ ...
JavaScript and CSS
Yii::app()->clientScript->registerScript('indif_js', 'alert("Пример");', CClientScript::POS_HEAD); // Добавить код в шапку $cs = Yii::app()->clientScript; $cs->registerCoreScript('jquery'); $cs->registerCoreScript('jquery.ui'); $cs->registerScriptFile($cs->getCoreScriptUrl().'/jui/js/jquery-ui-i18n.min.js'); $cs->registerCssFile($cs->getCoreScriptUrl().'/jui/css/base/jquery-ui.css');
Прочее
// Получить параметр переданный через GET или POST
Yii::app()->request->getParam('param', null)
С jquery ui у меня всегда возникают проблемы, coreScript тоже не помогает, может кто-то сталкивался?