标签存档: Yii Framework

1,406 查看

Yii的路由机制分析

在Yii中,route是一个非常重要的步骤。通过route我们可以定制更加个性互的Url。同时很多时候,如果route规则复杂也会容易出问题。所以,研究清楚route的机制是十分重要的。在这里希望你能先参看Yii Framework的process flow分析 首先,让我们先看一段代码,此段代码出现在CWebApplication中, 1 /** 2 * @var array the configuration specifying a controller which should handle 3 * all user requests. This is mainly used when the application is in maintenance mode 4 * and we should use …

继续阅读 »

2,212 查看

Yii中的核心CComponent类详解

CComponet类是Yii中影响最广的类。不仅Application继承自它,Event,Behavior,Action,Controller,Widget总之很多都是继承自它。在这里我们不一一列举,到底有哪些类是继承字CComponent类的。我们在这里主要是从现实意义上来剖析CComponet的作用,角色。当读完本篇后,你应该对继承自Yii的CComponent的类有什么样的属性,什么样的特性和作用,了然于胸。 CComponent类是一个很庞大的类,我们就按照由粗到细的过程来讲解。让我们先直观感受下CComponet类是长什么样子的。 下图为CComponet的类视图 在解释这个类前,我们先简单介绍下php中几个重要的函数,在yii中,他们被频繁的使用。 __set() is run when writing data to inaccessible properties. __get() is utilized for reading data from inaccessible properties. __isset() is triggered by calling isset() or empty() on inaccessible properties. __unset() is invoked when unset() is used on inaccessible properties. __call() is triggered when invoking inaccessible methods in …

继续阅读 »

4,452 查看

Yii中Action详解

在此篇中,主要介绍Yii是如何看待Action的。那么在Controller中又是如何如何处理Action的,Action又有哪些需要注意的特性呢? 带着这些问题,我们来看看下面的代码,里面会涉及到Yii Framework的process flow分析文中提到的一些基础,如果没有看过,建议先阅读之。 首先先看段代码,此段代码位于CController中 1 public function createAction($actionID) 2 { 3 if($actionID==='') 4 $actionID=$this->defaultAction; 5 if(method_exists($this,'action'.$actionID) && strcasecmp($actionID,'s')) // we have actions method 6 return new CInlineAction($this,$actionID); 7 else 8 { 9 $action=$this->createActionFromMap($this->actions(),$actionID,$actionID); 10 if($action!==null && !method_exists($action,'run')) 11 throw …

继续阅读 »

969 查看

Yii Framework的process flow分析

本篇主要讲述yii是如何处理一个web请求的,其中包括了route,filter,controller,action等等。他是如何安排他们各自的顺序,同时又预留了哪些事件函数,以让开发者更好的控制。本文需要一定的编程基础和对yii有一定熟悉,属于进阶型的。另外,由于程序庞大,比较复杂,请千万看准,哪段程序是在哪个类中的。 Ready! Start… 首先要说的肯定是index.php,他作为整个application的入口文件,起到了初始化各种变量的作用,接下来看代码,在这里我们约定下,这里所有的代码都一般情况下的   1 <?php 2 3 // change the following paths if necessary 4 $yii=dirname(__FILE__).'/../yiiframework/framework/yii.php'; 5 $config=dirname(__FILE__).'/protected/config/main.php'; 6 7 // remove the following lines when in production mode 8 defined('YII_DEBUG') or define('YII_DEBUG',true); 9 // specify how many …

继续阅读 »

1,025 查看

Yii中的Event和Behaviour理解

Event                                                                               …

继续阅读 »

无觅相关文章插件,快速提升流量