What this book covers

Chapter 1, Under the Hood, provides information about the most interesting Yii features hidden under the hood: events, import, autoloading, exceptions, component, widget configuration, and many more.

Chapter 2, Router, Controller, and Views, is about handy things concerning the Yii URL router, controllers, and views: URL rules, external actions and controllers, view clips, decorators, and more.

Chapter 3, AJAX and jQuery, focuses on the Yii's client side that is built with jQuery—the most widely used JavaScript library out there. It is very powerful and easy to learn and use. This chapter focuses on Yii-specific tricks rather than jQuery itself.

Chapter 4, Working with Forms, shows how Yii makes working with forms a breeze and documentation on it is almost complete. Still, there are some areas that need clarification and examples. Some of the topics covered in this chapter are creating validators and input widgets, uploading files, and using and customizing CAPTCHA.

Chapter 5, Testing Your Application, covers unit testing, functional testing, and generating code coverage reports. Recipes follow a test-driven development approach. You will write tests for several small applications and then implement functionality.

Chapter 6, Database, Active Record, and Model Tricks, is about working with databases efficiently, when to use models and when not to, how to work with multiple databases, how to automatically pre-process Active Record fields, and how to use powerful database criteria.

Chapter 7, Using Zii Components, covers data providers, grids, and lists: How to configure sorting and searching, how to use grids with multiple related models, how to create your own column types, and more.

Chapter 8, Extending Yii, shows not only how to implement your own Yii extension but also how to make your extension reusable and useful for the community. In addition, we will focus on many things you should do to make your extension as efficient as possible.

Chapter 9, Error Handling, Debugging, and Logging, reviews logging, analyzing the exception stack trace, and own error handler implementation.

Chapter 10, Security, provides information about keeping your application secure according to the general web application security principle "filter input, escape output." We will cover topics such as creating your own controller filters, preventing XSS, CSRF, and SQL injections, escaping output, and using role-based access control.

Chapter 11, Performance Tuning, shows how to configure Yii to gain extra performance. You will learn a few best practices for developing an application that will run smoothly until you have very high loads.

Chapter 12, Using External Code, focuses on using third-party code with Yii. We will use Zend Framework, Kohana, and PEAR but you will be able to use any code after learning how it works.

Chapter 13, Deployment, covers various tips that are especially useful on application deployment, when developing an application in a team, or when you just want to make your development environment more comfortable.