Pop PHP Framework
   HOME

TheInfoList



OR:

The Pop PHP Framework a free and
open source Open source is source code that is made freely available for possible modification and redistribution. Products include permission to use and view the source code, design documents, or content of the product. The open source model is a decentrali ...
PHP PHP is a general-purpose scripting language geared towards web development. It was originally created by Danish-Canadian programmer Rasmus Lerdorf in 1993 and released in 1995. The PHP reference implementation is now produced by the PHP Group. ...
Web framework A web framework (WF) or web application framework (WAF) is a software framework that is designed to support the development of web applications including web services, web resources, and web APIs. Web frameworks provide a standard way to build a ...
that was created by Nick Sagona. It is distributed under the
BSD License BSD licenses are a family of permissive free software licenses, imposing minimal restrictions on the use and distribution of covered software. This is in contrast to copyleft licenses, which have share-alike requirements. The original BSD lic ...
and hosted on
GitHub GitHub () is a Proprietary software, proprietary developer platform that allows developers to create, store, manage, and share their code. It uses Git to provide distributed version control and GitHub itself provides access control, bug trackin ...
. The framework is intended to be utilized for rapid application development, with an emphasis on web applications.


History

Development on the Pop PHP Framework was officially begun by Nick Sagona in late 2011, when he refactored a set of older library components into the first version of Pop PHP, which was released on March 19, 2012. The focus was for Pop PHP to become a more modern, MVC-style web framework with a set of supporting components to assist in building web applications. After PHP 5.4 was released, Pop PHP 2 was refactored to take advantage of the new features available in PHP 5.4, as well as fully leveraging
Composer A composer is a person who writes music. The term is especially used to indicate composers of Western classical music, or those who are composers by occupation. Many composers are, or were, also skilled performers of music. Etymology and def ...
by breaking out almost all of the components into separate repositories on GitHub. Pop PHP 2 was first released on July 12, 2015. Pop PHP 3 was a slight refactor of the existing framework, while adding a handful of new components and deprecating a few older components. Version 3 supports PHP 7 and 5.6 and was released on July 9, 2016. The last version, 3.8.0, was released on August 25, 2018. The EOL version 3.8.9 was released on February 24, 2020. Pop PHP 4 was a refactor of the existing framework that upgraded and improved existing components and focused on leveraging newly available features in PHP 7.4 and 8.0. Pop PHP 5 was another major refactor of the framework, adding a number of new features and upgrades and focusing on the new features available in PHP 8.2+. The current version, 5.5.0, supports PHP 8.1+ and was released on February 12, 2025. The framework has been included on a number of "best of" lists for new and up-and-coming PHP Frameworks. The Pop PHP Framework is the framework on which the open source Phire CMS project was built.


Release history

Version 5.5.0 is the current version that is in active development. Versions 4.8.0 and earlier have reached end of life and are no longer supported. A current changelog is maintained for a recent list of changes and how they impact continued development with Pop PHP. Source: GitHub


Development

While the initial development of the Pop PHP Framework was focused on building web applications, since version 3, Pop PHP fully supports console-based applications to be used on the
CLI CLI may refer to: Computing * Call Level Interface, an SQL database management API * Command-line interface, of a computer program * Command-line interpreter or command language interpreter; see List of command-line interpreters * CLI (x86 instruc ...
as well. Pop PHP incorporates current standards, trends and patterns in software development in an attempt to build an ecosystem that is familiar to developers. The framework is heavily unit-tested using
PHPUnit PHPUnit is a unit testing framework for the PHP programming language. It is an instance of the xUnit architecture for unit testing frameworks that originated with SUnit and became popular with JUnit. PHPUnit was created by Sebastian Bergmann an ...
and runs through the GitHub Actions workflow platform to ensure the builds of the individual framework components are passing. Pop PHP 5.5.0 is currently written for and supports PHP 8.2+, and no longer supports PHP <=7.4. The Pop PHP Framework project welcomes community involvement and contribution via the current available channels.


Features

The base foundation of Pop PHP is the initial set of core components that make up the application stack: * The Application Object * The Router * The Service Locator * The Event Manager * The Module Manager * The Base Controller Class Additionally, there are a number of other components that are available for use in building an application. Some of the commonly used components and what they include are: * Database Abstraction (popphp/pop-db) ** Database adapters ** Active record ** Query builder ** SQL migration * HTTP Abstraction (popphp/pop-http) ** HTTP client & server classes ** Promises ** Headers & Auth ** Request & response handlers ** File uploads * HTML Form Generation (popphp/pop-form) ** Simple form configuration & rendering ** HTML form validation * PDF Generation (popphp/pop-pdf) ** PDF creation & editing * Job Queue (popphp/pop-queue) ** Job queue management & scheduler * Mail (popphp/pop-mail) ** Support for popular mail APIs ** SMTP support ** Mail queues ** IMAP/POP client * Storage (popphp/pop-storage) ** Support for popular cloud-based storage APIs * Auditing (popphp/pop-audit) * Caching (popphp/pop-cache) * Debugging (popphp/pop-debug) * Logging (popphp/pop-log) * Image Manipulation (popphp/pop-image) * Views (popphp/pop-view) * Sessions (popphp/pop-session) * Console (popphp/pop-console) * Cookies (popphp/pop-cookie)


Popcorn

Popcorn is a standalone web-based component that serves as a REST-based micro-framework layer to allow developers to quickly build REST-based web applications and APIs. With it, a developer can enforce routes by request methods and direct HTTP requests accordingly.


Kettle

Kettle is a CLI-based helper script available since version 4.0.1. It allows the user to quickly scaffold application files and folders together as well as manage databases and migrations.


References


External links


Official Website
{{Web frameworks Free software programmed in PHP PHP frameworks Web frameworks Software using the BSD license