文章分类 -  Yii

摘要:YII中的CComponent,CEvent与Behavior及CActiveRecordBehavior个人理解 这一块教程少,今天个人理解了下,写了个小例子,有助于理解 完成如下功能,一个JTool类,继承CComponent,当其长度改变时,调用事件,输出"change me". JTool.php在protected/components 下 <?php class JTool extends CComponent{ private $_width; public function getWidth(){ return $this->_width ? $ 阅读全文
posted @ 2012-03-21 13:23 mr.coke 阅读(466) 评论(1) 推荐(0)
摘要:下载 srbacSrbac 可以在如下地址下载: Yii 扩展页面: http://www.yiiframework.com/extension/srbac/ Google 项目页面: http://code.google.com/p/srbac/downloads/list也可以使用如下命令签出最新的开发代码:svn checkout http://srbac.googlecode.com/svn/trunk/ srbac-read-only 安装 srbac要安装 srbac 模块,首先解压压缩文件到Yii应用的模块目录,如果把srbac作为一个模块的话,就要在protected文件夹下. 阅读全文
posted @ 2012-03-20 13:52 mr.coke 阅读(5807) 评论(0) 推荐(0)
摘要:YiiBase类为YII框架的运行提供了公共的基础功能:别名管理与对象创建管理。 在创建一个php的对象时,需要先include这个类的定义文件,然后再new这个对象。在不同环境下(开发环境/测试环境/线上环境),apache 的webroot路径的配置可能不一样,所以这个类的定义文件的全路径就会不同,Yii框架通过YiiBase的别名管理来解决了这个问题。 在创建对象时,需要导入对应类的定义,经常需要使用这5个函数:include()、include_once()、require()、 require_once()、set_include_path()。Yii通过使用YiiBase::i.. 阅读全文
posted @ 2012-03-20 13:19 mr.coke 阅读(1718) 评论(0) 推荐(1)
摘要:理组件主要提供2个功能: 1、根据用户输入的url,解析出处理这个请求的路由——由哪个Controller的哪个Action来处理,同时将url中的部分参数添加到$_GET参数中。在每个web框架中都需要一个这样的组件来进行路由分发的工作。 2、根据路由和参数数组创建出url。在视图层可以对url进行硬编码,即直接写死url地址,但是这往往缺乏灵活性,为后期的维护带来成本。 array( 'components'=>array( 'urlFormat'=>'path', 'rules'=>array( ' 阅读全文
posted @ 2012-03-20 13:12 mr.coke 阅读(4439) 评论(2) 推荐(0)
摘要: 阅读全文
posted @ 2012-03-20 13:07 mr.coke 阅读(232) 评论(0) 推荐(0)
摘要:CComponent CComponent类为YII框架的基于组件和事件驱动编程提供了基础,YII框架中的大部分类都将CComponent类作为基类。CComponent类为它的子类提供3个特性: 1、成员变量扩展 通过定义两个成员函数(getXXX/setXXX)来定义一个成员变量,比如: public function getText() {…} public function setText {…} 这样就相当于定义了一个$text成员变量,可以这样调用 $a=new CComponent; $a=$component->text; // 等价于$a=$component-> 阅读全文
posted @ 2012-03-20 12:59 mr.coke 阅读(429) 评论(0) 推荐(0)
摘要:Yii的Active Recorder包装了很多。特别是把SQL中 把where,order,limit,IN/not IN,like等常用短句都包含进CDbCriteria这个类中去,这样整个代码会比较规范,一目了然。 $criteria =newCDbCriteria;$criteria->addCondition("id=1"); //查询条件,即where id =1 $criteria->addInCondition('id', array(1,2,3,4,5));//代表where id IN (1,23,,4,5,); $crite 阅读全文
posted @ 2012-02-25 14:00 mr.coke 阅读(45620) 评论(2) 推荐(2)
摘要:访问规则中: expression: 设定一个PHP表达式。它的值用来表明这条规则是否适用。在表达式,你可以使用一个叫$user的变量,它代表的是Yii::app()->user。 expression的具体用法: class AdminController extends CController {…… public function accessRules() { return array( array('allow', //允许所有人执行'login','error','index' 'actions' 阅读全文
posted @ 2012-02-20 22:23 mr.coke 阅读(1642) 评论(0) 推荐(1)
摘要:1 <IfModule mod_rewrite.c>2 RewriteEngine on3 RewriteCond %{REQUEST_FILENAME} !-d4 RewriteCond %{REQUEST_FILENAME} !-f5 RewriteRule ^(.*)$ index.php/$1 [QSA,PT,L]6 </IfModule> 阅读全文
posted @ 2012-02-20 13:04 mr.coke 阅读(329) 评论(0) 推荐(0)
摘要:public array rules () {return} array 要调用 validate() 时应用的有效性规则。 返回属性的有效性规则。 声明验证规则,应重写此方法。 每个规则是数组具有以下结构:array('attribute list', 'validator name', 'on'=>'scenario name', ...validation parameters...) 注: attribute list: 指定属性 (以逗号分隔) 进行验证 ;validator name: 指定要使用的验证程序。 它 阅读全文
posted @ 2012-02-19 22:22 mr.coke 阅读(2365) 评论(0) 推荐(0)
摘要:1.打印AR结果1 $user = 模型->model()->findAll();2 foreach($user $v) {3 var_dump($v->attributes);4 } 阅读全文
posted @ 2012-02-18 23:58 mr.coke 阅读(199) 评论(0) 推荐(0)
摘要:1 Yii::app()->clientScript->registerScriptFile(Yii::app()->theme->baseUrl.'/js/jQuery.js');2 Yii::app()->clientScript->registerCoreScript('jquery'); 阅读全文
posted @ 2012-02-18 21:37 mr.coke 阅读(437) 评论(0) 推荐(0)
摘要:main.php 1 <?php 2 3 // uncomment the following to define a path alias 4 // Yii::setPathOfAlias('local','path/to/local-folder'); 5 6 // This is the main Web application configuration. Any writable 7 // CWebApplication properties can be configured here. 8 return array( 9 'baseP 阅读全文
posted @ 2012-02-18 20:52 mr.coke 阅读(3501) 评论(0) 推荐(0)
摘要:YII中的日志很好很强大,允许你把日志信息存放到数据库,发送到制定email,存放咋文件中,意见显示页面是,甚至可以用来做性能分析。YII中日志的基本配置:/yii_dev/testwebap/protected/config/main.php 1 'log'=>array( 2 'class'=>'CLogRouter', 3 'routes'=>array( 4 array( 5 'class'=>'CFileLogRoute', 6 ... 阅读全文
posted @ 2012-02-18 19:46 mr.coke 阅读(10602) 评论(0) 推荐(1)