Tag: cakephp

About

CakePHP is an open source web application framework for producing web applications written in PHP. It is written in PHP, modeled after the concepts of Ruby on Rails, and distributed under the MIT License.

CakePHP started in 2005, when Ruby on Rails was gaining popularity. The community has since grown and spawned several sub-projects. CakePHP is not a port of Ruby on Rails to PHP, but appropriates many of its useful concepts.

The Mambo Foundation announced in 2007 that it would utilize the CakePHP framework for future versions of its widely used content management system, calling CakePHP a "solid choice and certainly one of the top frameworks available today."

Features of CakePHP

Like Rails, CakePHP makes it easier for the user to interface with the database with active records. It also encourages use of the model-view-controller architectural pattern.

  • Compatible with PHP4 and PHP5
  • Integrated CRUD for database and simplified querying
  • Request dispatcher with custom URLs
  • Templating (PHP syntax with helper methods)
  • View helpers for AJAX, Javascript, HTML forms
  • Website directory independent
  • Built-in validation
  • Access control lists (ACL)
  • Application scaffolding
  • Data sanitization
  • Security, session, and request handling components
  • View caching
  • Unit testing using the SimpleTest framework, available in CakePHP version 1.2

From en.wikipedia.org/wiki/CakePHP

 

This article in 50 words: I used to prefer spaces vs tabs, now I don't care so much, think it's more important that you can easily switch on a per-project basis. Have some thoughts on how conventions should be established, and I'll demonstrate bash code that can convert your codebase to a new standard.

I still got sites running Apache, but all new projects are launched with Nginx. I don't need many of the features that Apache offers, and the speed gain of Nginx is just tremendous. Once you've experienced it, I doubt you'll want to go back.

At our company we have a lot of uses for a solid API. We can use it to distribute config files, have servers report in, let customers edit DNS records using their own interface, etc.

If you store application data in memcache, you may want to invalidate it once you deploy a new version to avoid corruption or weird results. There are several ways to do this but I recently tried one using nothing but BASH, and I like it.

PHP 5.3 is a big leap forward for PHP and brings of a lot of neat features. However, big leaps can also mean big changes and potentially big breakage when it comes to backwards compatibiltiy.

Looking back at a great CakeFest in Berlin, I learned a lot about CakePHP and met many nice and inspiring people. Here are some conference notes I took that where particularly useful or new to me.

So I've been learning CakePHP the last few days. Bit by bit I've been trying to port a lecagy admininistration app to Cake. 'Secretly' linking menuitems to finished Cake parts as we go. And I must say: I'm pretty excited. I did run into a disturbing conclusion though. I estimated the legacy app will have over 300 Models & Controllers once finished. That could easily add up to (300 x 4 =) 1200 views. And here I am, creating a maintenance hell while trying to solve one!