Scaffold is a powerful standalone PHP class that dynamically creates CRUD functionality for a database table. It is designed to dramatically decrease the time it takes to get your database-driven application up and running.
When I first saw the Ruby on Rails "weblog in 15 minutes" screencast, I wished that there was an easy way to accomplish the same thing in PHP. While there are plenty of PHP frameworks with this functionality, I wanted something standalone that I could easily integrate into my projects. This class is what I came up with.
The class has many features out of the box, but it has been built in such a way that it can be customized to suit your needs. Additionally, it outputs standard HTML tables which can be easily styled with CSS to fit into your website or application.
- Support for one-to-many relationships (many-to-many are on the todo list)
- Image uploading and resizing
- Thumbnail generation
- Supports file uploads with extension validation
- Disable certain actions (show, add, edit, or delete)
- Handles SET or ENUM fields as select boxes
- Sort by any of the columns
- Hide different columns from the listing table or from all views
- Automatic recognition and handling of created and modified date fields
- Easy to extend and style to fit into various projects
I've setup an example of a simple store backend to show its functionality.