Rasmus Lerdorf on June 8, 1995:
Announcing the Personal Home Page Tools (PHP Tools) version 1.0.
These tools are a set of small tight cgi binaries written in C.
There are a lot of macro-frameworks, micro-frameworks, components. All these lines has to be written to solve a problem: Building applications on top of PHP. We want to save time and work efficent, we want to use well tested and integrated components to create our applications. We want to use the power of the open source community to be reach our goal faster and share our results and experience with the open source community.
The basic lifecycle
We want to build a basic application by using existing components, without a specific framework. All these frameworks do have advantages and disadvantages. We want to use only the best solutions, which fits our needs.
An application could be everything. A small RSS-Reader, a command-line-tool, cron-worker, Webshop, Blog, API-Service, common website and so on. All these types of application are subdivided into two runtime environments:
A common lifecycle is to receive an request, route to any type of control and display a response. A Web application is receiving a request and returning a response as a HTTP message. A CLI application is receiving a request from STDIN and is returning a response to stdout or stderr when an error occurs.
The world of components
There are many components in the PHP-Land. Symfony, Zend, Aura PHP, StackPHP, the PHP league are organizations which develop component based frameworks, and components for a special usage. There are also more special components like HybridAuth, Geocoder, Doctrine, Propel, PHPUnit or Behat for a specific use.
With composer, a dependency manager, we are able to bundle or components and get ready for use.
Creating one or more applications from scratch which is fitting our needs.
Roadmap, continues release snapshots and development
A roadmap is the foundation of development tasks. The roadmap defines rough milestones for a project.
This series of Modern Applications with PHP has a defined roadmap:
- Initializing our dev environment
- A basic web application with basic routing and hello world
- A basic CLI wrapper
- Database connector
- Custom views
- Introducing MVC with the basic Blog-Example
- a CLI-Interface to manage our blog
- to be continued…
We will also comply with the PSR standards defined by PHP-FIG