Book Image

Phalcon Cookbook

By : Serghei Iakovlev, David Schissler
1 (2)
Book Image

Phalcon Cookbook

1 (2)
By: Serghei Iakovlev, David Schissler

Overview of this book

Phalcon is a high-performance PHP framework delivered as a PHP extension. This provides new opportunities for speed and application design, which until recently have been unrealized in the PHP ecosystem. Packed with simple learning exercises, technology prototypes, and real-world usable code, this book will guide you from the beginner and setup stage all the way to advanced usage. You will learn how to avoid niche pitfalls, how to use the command-line developer tools, how to integrate with new web standards, as well as how to set up and customize the MVC application structure. You will see how Phalcon can be used to quickly set up a single file web application as well as a complex multi-module application suitable for long-term projects. Some of the recipes focus on abstract concepts that are vital to get a deep comprehension of Phalcon and others are designed as a vehicle to deliver real-world usable classes and code snippets to solve advanced problems. You’ll start out with basic setup and application structure and then move onto the Phalcon MVC and routing implementation, the power of the ORM and Phalcon Query Language, and Phalcon’s own Volt templating system. Finally, you will move on to caching, security, and optimization.
Table of Contents (17 chapters)
Phalcon Cookbook
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Preface
Index

Precompiling Volt templates for increased performance and security


In this recipe, we will create a multi-module application with both a web and CLI environment. We first use the CLI environment to precompile the Volt templates for the web environment while taking care to avoid difficult-to-solve edge cases and then we will use the web environment to displaying our precompiled templates. This approach is useful for increasing the performance of a website while also allowing us to set the permissions of our Volt cache directory to be unwritable by the web server. This is useful because compiled Volt templates are essentially phtml fragments and it is a good idea to never allow the web server to generate executable code.

Getting ready

This recipe uses the Phalcon Developer Tools, which we will use to set up a project skeleton. We will not need a database for this recipe. This recipe will make advanced use of Phalcon modules and CLI and web integration.

How to do it…

Follow these steps to complete...