Yii framework

    One more PHP framework accidentally met. Usually I look at new frameworks briefly, but this one was very interesting to me.

    The authors (Qiang Xue, Xiang Wei Zhuo) are probably known to you for their rather flexible, but also rather inhibited Prado framework .

    So, what is so interesting about him?


    According to the numbers, it is faster than CodeIgniter, CakePHP, ZF and Symfony . And when using APC - not just faster, but faster than more than twice. Here, of course, it is worth considering that only the most basic things are compared.

    Architecture and features

    - Fully object oriented without a single global variable or function.
    - Component MVC.
    - DAO, Active Record.
    - Validation of forms.
    - Authentication, authorization.
    - WSDL generation and comprehensive support for web services.
    - Internationalization, localization.
    - Multilevel caching system (data, pages, parts of pages). Support for various cache storage in the form of backends.
    - A lot of things to prevent XSS, CSRF and other attacks.
    - All output code is XHTML.
    - Console skeleton code generators.
    - Allows you to use any other code (Zend Framework, PEAR, etc.)
    - The client uses jQuery.

    Borrowing ideas

    - Prado: Well, that’s clear. Still, the authors are the same ... Ideas are taken from it: component structure, event programming, DBMS abstraction layer, modularity, internationalization, localization, etc.
    - Ruby on Rails: Convention over configuration (you can start working, but configure as needed). Somewhere in the documentation comments, people respond that it’s easier to understand than with Rails. Also similar to RoR is Active Record.
    - Symfony: filters, plugins.
    - Joomla: Modules, line feed.


    The documentation is certainly not as simple and small as in CodeIgniter, but very, very good. There is nothing in Russian, but with the documentation in English everything is very good:

    API documentation
    The Definitive Guide to Yii (122 pages in detail and with examples).
    Offline versions of the

    Third number held the release of stable version 1.0.0. Distributed by new BSD (can be used for both open and closed applications).


    Also popular now: