YII路径的用法总结,YII路径用法总结
在yii中如果是 // 就会默认去调 protected/views/layouts,//代表绝对路径。这其实就是绝对和相对的关系 /代表相对路径,如module/user下的layout。使用单斜杠的话默认会先找当前已经激活的模块底下的view,若当前未有激活的模块则从系统根目录下开始找,双斜杠的话就直接从系统根下开始找
Yii framework已经定义的命名空间常量:
system: 指向Yii框架目录; YII\framework
zii: 指向zii library 目录; YII\framework\zii
application: 指向应用程序基本目录; protected\
webroot: 指向包含里入口脚本文件的目录. 此别名自 1.0.3 版起生效. \
ext: 指向包含所有第三方扩展的目录, 从版本 1.0.8 可用; \protected\extensions
Yii::getPathOfAlias('zii') Yii::import ('zii.*') Yii::setPathOfAlias('backend', $backend); 'import' => array( 'backend.models.*',
应用的主目录是指包含所有安全系数比较高的PHP代码和数据的根目录。在默认情况下,这个目录一般是入口代码所在目录的一个目录: protected。这个路径可以通过在application configuration里设置 basePath来改变.
YII framework路径:
Yii::getFrameworkPath() {full URL}
http://localhost/yii_lab/index.php?r=lab/urlBoyLeeTest
protected/venders目录:
Yii::import('application.venders.*');
或在protected/config/main.php说明:
'import'=>array( ...... 'application.venders.*', ),
插入meta信息:
Yii::app()->clientScript->registerMetaTag('keywords','关键字'); Yii::app()->clientScript->registerMetaTag('description','一些描述'); Yii::app()->clientScript->registerMetaTag('author','作者'); <link rel="alternate" type="application/rss+xml" href="http://www.bkjia.com/" /> Yii::app()->clientScript->registerLinkTag('alternate','application/rss+xml',$this->createUrl('/feed'));
在控制器添加CSS文件或JavaScript文件:
Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/my.css'); Yii::app()->clientScript->registerScriptFile(Yii::app()->baseUrl.'/css/my.js'); <?php echo $this->module->assetsUrl; ?>/css/main.css
调用YII框架中framework/web/js/source的js,其中registerCoreScript key调用的文件在framework/web/js/packages.php列表中可以查看:
Yii::app()->clientScript->registerCoreScript('jquery');
在view中得到当前controller的ID方法:
Yii::app()->getController()->id;
在view中得到当前action的ID方法:
Yii::app()->getController()->getAction()->id;
yii获取ip地址
Yii::app()->request->userHostAddress;
yii判断提交方式
Yii::app()->request->isPostRequest
得到当前域名:
Yii::app()->request->hostInfo
得到proteced目录的物理路径
YII::app()->basePath;
获得上一页的url以返回
Yii::app()->request->urlReferrer;
得到当前url
Yii::app()->request->url;
得到当前home url
Yii::app()->homeUrl
得到当前return url
Yii::app()->user->returnUrl
项目路径
dirname(Yii::app()->BasePath)
如果你自己有个目录下有些类或文件常用,可以在main.php的最上边定义一个路径别名,别名可以被翻译为其相应的路径。
Yii::getPathOfAlias('webroot')
如果是多个可以在main.php中的array中加一个配置
'aliases'=>array( 'local'=>'path/to/local/' ), <?php echo $this->getLayoutFile('main'); ?> $this->redirect('index.php?r=admin/manage'); {createUrl()} echo $this->createUrl('urlBoyLeeTest'); //out => /yii_lab/index.php?r=lab/urlBoyLeeTest $this->createUrl('post/read') // /index.php/post/read <?php echo Yii::app()->request->baseUrl; ?>/css/screen.css Yii::app()->theme->baseUrl.'/images/FileName.gif' {createAbsoluteUrl()} echo $this->createAbsoluteUrl('urlBoyLeeTest'); //out => http://localhost/yii_lab/index.php?r=lab/urlBoyLeeTest
你这个方法写的没问题,但是如果是多表联查,不建议写在search方法里面,yii自动生成model的时候,一般会生成search方法,search方法一般作为该model的查询使用,即单独的一张表查询。
如果多张表联查,再写一个方法多好啊!而且,查询方法写在action中即可,多表查询没必要写在model里面啊
哈哈 以上只是个人习惯 仅供参考。
CActiveDataProvider 返回的查询结果,一般通过getData方法获取一个list数组,网上yii的例子很多,楼主随便查一下就明白了
controller, model和view本来就是独立的,你就直接套用你想要的view模板就好了,只要view表单中使用yii的CActiveForm widget就可以实现验证功能

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor