You are on page 1of 4

Yii Framework

Información tomada de: http://www.yiiframework.com/about/ 
Latest version at the moment of writing: 1.1.14 
 
Yii is pronounced as Yee or [ji:], and is an acroynym for "Yes It Is!". This is often the accurate, 
and most concise response to inquires from those new to Yii: 
Is it fast? ... Is it secure? ... Is it professional? ... Is it right for my next project? ... Yes, it is! 
 
Yii is a free, open­source Web application development framework written in PHP5 that 
promotes clean, DRY design and encourages rapid development. It works to streamline your 
application development and helps to ensure an extremely efficient, extensible, and maintainable 
end product. 
 
Being extremely performance optimized, Yii is a perfect choice for any sized project. However, it 
has been built with sophisticated, enterprise applications in mind. You have full control over the 
configuration from head­to­toe (presentation­to­persistence) to conform to your enterprise 
development guidelines. It comes packaged with tools to help test and debug your application, 
and has clear and comprehensive documentation. 
Features of Yii 
Whether you are one developer building a fairly simple Web site, or a team of distributed 
developers building an extremely complex Web application, using Yii is like augmenting your 
development team with additional experienced, professional, and efficient resources. All for free!  
 
You can stay focused on the tasks specific to your business requirements, and let Yii provide an 
implementation strategy for all of the following: 
 
● Model­View­Controller design pattern 
● AJAX­enabled widgets 
● Web services 
● Error handling and logging 
● Security 
● Database Access Objects(DAO), Query Builder, Active Record, DB Migration 
● Form input and validation 
● Authentication and authorization 
● Skinning and theming 
● Web services 
● Internationalization (I18N) and localization (L10N) 
● Unit and functionality testing 
● Automatic code generation 
Documento creado por Francisco Quintero 
● Friendly with third­party code 
● Detailed documentation 
● Extension library 
Performance of Yii 
Yii is a high­performance framework. The graph below shows how efficient Yii is when 
compared with other popular PHP frameworks. In the graph, RPS stands for "request per 
second" which describes how many requests an application written in a framework can process 
per second. The higher the number, the more efficient a framework is. As we can see that Yii 
outperforms all other frameworks in this comparison. The performance advantage of Yii is 
especially significant when the widely used APC extension is enabled. 
 
Performance alone is not the whole story (otherwise we should all use plain HTML or PHP). With 
such superior performance, Yii still provides a very rich feature set which can greatly improve 
your development efficiency. 
 
 
 
Why Yii is so Fast
Yii is so much faster because it is using the lazy loading technique extensively. For example, it 
Documento creado por Francisco Quintero 
does not include a class file until the class is used for the first time; and it does not create an 
object until the object is accessed for the first time. Other frameworks suffer from the 
performance hit because they would enable a functionality (e.g. DB connection, user session) no 
matter it is used or not during a request. 
 
Code Examples 
Un primer vistazo es revisando el tour 
 
Ejemplo tomado de http://paraisolinux.com/hola­mundo­yii/ 
 
<?php 
class SiteController extends Controller 

   public function actionIndex() 
   { 
      $nombre="Perro"; 
      $this­>render('index',array('nombre'=>$nombre)); 
   } 

 
Ejemplo tomado de http://www.yiiframework.com/doc/guide/1.1/en/form.model 
 
class LoginForm extends CFormModel 

    public $username; 
    public $password; 
    public $rememberMe=false; 
  
    private $_identity; 
  
    public function rules() 
    { 
        return array( 
            array('username, password', 'required'), 
            array('rememberMe', 'boolean'), 
            array('password', 'authenticate'), 
        ); 
    } 
  
    public function authenticate($attribute,$params) 
    { 
        $this­>_identity=new UserIdentity($this­>username,$this­>password); 
Documento creado por Francisco Quintero 
        if(!$this­>_identity­>authenticate()) 
            $this­>addError('password','Incorrect username or password.'); 
    } 

 
 
Referencias 
 
Instalar Yii en GNU/Linux 
Cómo iniciar con Yii 
Documento creado por Francisco Quintero