Table of Contents : The Manual
- 1 Basic Principles of CakePHP
- 2 Developing with CakePHP
- 2.1 Requirements
- 2.2 Installation Preparation
- 2.3 Installation
- 2.4 Configuration
- 2.5 Controllers
- 2.5.1 Introduction
- 2.5.2 Controller Attributes
- 2.5.3 Controller Methods
- 2.6 Components
- 2.7 Models
- 2.7.1 Introduction
- 2.7.2 Automagic Model Fields
- 2.7.3 Model Attributes
- 2.7.4 Model Methods
- 2.7.5 Associations
- 2.7.6 DataSources
- 2.7.7 Behaviors
- 2.8 Views
- 2.9 Helpers
- 2.10 Scaffolding
- 2.11 The CakePHP Console
- 2.12 Code Generation with Bake
- 2.13 Plugins
- 2.14 Global Constants and Functions
- 3 Common Tasks With CakePHP
- 3.1 Data Validation
- 3.1.1 Simple Rules
- 3.1.2 One Rule Per Field
- 3.1.3 Multiple Rules per Field
- 3.1.4 Built-in Validation Rules
- 3.1.4.1 alphaNumeric
- 3.1.4.2 between
- 3.1.4.3 blank
- 3.1.4.4 cc
- 3.1.4.5 comparison
- 3.1.4.6 date
- 3.1.4.7 decimal
- 3.1.4.8 email
- 3.1.4.9 equalTo
- 3.1.4.10 extension
- 3.1.4.11 file
- 3.1.4.12 ip
- 3.1.4.13 isUnique
- 3.1.4.14 minLength
- 3.1.4.15 maxLength
- 3.1.4.16 money
- 3.1.4.17 multiple
- 3.1.4.18 numeric
- 3.1.4.19 phone
- 3.1.4.20 postal
- 3.1.4.21 range
- 3.1.4.22 ssn
- 3.1.4.23 url
- 3.1.5 Custom Validation Rules
- 3.1.6 Validating Data from the Controller
- 3.2 Data Sanitization
- 3.3 Error Handling
- 3.4 Debugging
- 3.5 Caching
- 3.6 Logging
- 3.7 Testing
- 3.8 Localization & Internationalization
- 3.9 Pagination
- 3.1 Data Validation
- 4 Built-in Components
- 4.1 Access Control Lists
- 4.2 Authentication
- 4.3 Sessions
- 4.4 Request Handling
- Security Component
- 4.6 Email
- 4.7 Cookies
- 6 Built-in Helpers
- 6.1 Forms
- 6.1.1 Creating Forms
- 6.1.2 Closing the Form
- 6.1.3 Automagic Form Elements
- 6.1.3.1 $options[‘type’]
- 6.1.3.2 $options[‘before’], $options[‘between’] and $options[‘after’]
- 6.1.3.3 $options[‘options’]
- 6.1.3.4 $options[‘multiple’]
- 6.1.3.5 $options[‘maxLength’]
- 6.1.3.6 $options[‘div’]
- 6.1.3.7 $options[‘label’]
- 6.1.3.8 $options[‘id’]
- 6.1.3.9 $options[‘error’]
- 6.1.3.10 $options[‘selected’]
- 6.1.3.11 $options[‘rows’], $options[‘cols’]
- 6.1.3.12 $options[‘empty’]
- 6.1.3.13 $options[‘timeFormat’]
- 6.1.3.14 $options[‘dateFormat’]
- 6.1.4 File Fields
- 6.1.5 Form Element-Specific Methods
- 6.2 XML
- 6.3 HTML
- 6.4 Javascript
- 6.5 AJAX
- 6.6 Cache
- 6.7 Form
- 6.8 Number
- 6.9 Text
- 6.10 Time
- 6.1 Forms
- 7 Examples
- 8 The CakePHP Blog Tutorial
- 8.1 Getting Cake
- 8.2 Creating the Blog Database
- 8.3 Cake Database Configuration
- 8.4 Optional Configuration
- 8.5 A Note on mod_rewrite
- 8.6 Create a Post Model
- 8.7 Create a Posts Controller
- 8.8 Creating Post Views
- 8.9 Adding Posts
- 8.10 Data Validation
- 8.11 Deleting Posts
- 8.12 Editing Posts
- 8.13 Routes
- 8.14 Conclusion
- 9 Simple User Authentication
- 10 Appendices
Preface
Welcome to web development heaven.
If you’re reading the preface to a technical manual, you probably have too much time on your hands. We’re not celebrities, and since the material is what you're after, skip this superfluous section and dive right in.
Audience
This material is written for developers at all levels of ability; anyone who enjoys creating robust, maintainable applications quickly and effectively.
In order to understand the content of this document, you're going to need to have a working knowledge of PHP. Some basic familiarity with object-oriented programming will also help, though I suppose the introductory sections of this document could act as a primer of sorts.
There will be content that addresses technology which is technically beyond the scope of this document and not specific to the CakePHP framework. Some of these technologies include:
- AJAX
- JavaScript
- SQL
- Web Server Administration

By kmedlinnc on 3/4/08
1 - Is Preface "Superfluous?"
I might not position the first message the reader as, "Don't read this." What does everyone think of this instead:
Welcome to web development heaven!
CakePHP let's developers develop, designers design, and users use your masterpiece. Developers have literally dozens of PHP web application frameworks to choose from currently. CakePHP stands alone because it doesn't rely on multiple 3rd party frameworks to support core functionality, has a clear development support timeline, and has broad industry support from large scale projects.
You've come to the right place! A lot has changed since CakePHP 1.1 and we're excited to get you started learning CakePHP 1.2.
By kmedlinnc on 3/4/08
2 - err...
not "let's" just "lets" Missed that one in the proof.
login to add a comment