Jump to content

Archive:Pop PHP Framework: Difference between revisions

From IdeaWazaWiki
No edit summary
No edit summary
Line 6: Line 6:
| developer              = Nick Sagona
| developer              = Nick Sagona
| released              = {{Release date and age|2012|03|19}}
| released              = {{Release date and age|2012|03|19}}
| latest release version = 4.0.1<ref>{{cite web
| latest release version = 4.0.2<ref>{{cite web
  | url = https://github.com/popphp/popphp-framework/releases/tag/4.0.1
  | url = https://github.com/popphp/popphp-framework/releases/tag/4.0.2
  | title = popphp/popphp-framework: Release v4.0.1
  | title = popphp/popphp-framework: Release v4.0.2
  | website = github.com
  | website = github.com
}}</ref>
}}</ref>
Line 30: Line 30:
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.
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.


Pop PHP 4 was another refactor of the existing framework that upgraded and improved existing components. Version 4 supports PHP 7.1 or greater and PHP 5.6 is no longer supported. The current version, 4.0.1, was released on February 9, 2019.
Pop PHP 4 was another refactor of the existing framework that upgraded and improved existing components. Version 4 supports PHP 7.1 or greater and PHP 5.6 is no longer supported. The current version, 4.0.2, was released on March 12, 2019.


The framework has been included on a number of "best of" lists for new and up-and-coming PHP Frameworks.<ref>{{
The framework has been included on a number of "best of" lists for new and up-and-coming PHP Frameworks.<ref>{{
Line 56: Line 56:
===Release history===
===Release history===


Version 4.0.1 is the current version that is in active development. Version 3 is still available while versions 2 and 1 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.<ref>{{cite web |url=https://github.com/popphp/popphp-framework/blob/master/CHANGELOG.md |title=Github: Pop PHP Framework Changelog|website=github.com}}</ref>
Version 4.0.2 is the current version that is in active development. Version 3 is still available while versions 2 and 1 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.<ref>{{cite web |url=https://github.com/popphp/popphp-framework/blob/master/CHANGELOG.md |title=Github: Pop PHP Framework Changelog|website=github.com}}</ref>
<!--Template:Version - for version & release history. Documentation & examples: -->
<!--Template:Version - for version & release history. Documentation & examples: -->
{{Version |t |show=11111}}
{{Version |t |show=11111}}
Line 114: Line 114:
! {{Version |c |4.0.1}}
! {{Version |c |4.0.1}}
| February 9, 2019
| February 9, 2019
| Current production version
|-
! {{Version |c |4.0.2}}
| March 12, 2019
| Current production version
| Current production version
|-
|-

Revision as of 18:32, 12 March 2019

Template:Infobox software

The Pop PHP Framework a free and open source PHP Web framework that was created by Nick Sagona. It is distributed under the BSD License and hosted on GitHub. 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 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.

Pop PHP 4 was another refactor of the existing framework that upgraded and improved existing components. Version 4 supports PHP 7.1 or greater and PHP 5.6 is no longer supported. The current version, 4.0.2, was released on March 12, 2019.

The framework has been included on a number of "best of" lists for new and up-and-coming PHP Frameworks.[1][2][3][4][5][6][7]

The Pop PHP Framework is the framework on which the open source Phire CMS project is built.[8][9]

Release history

Version 4.0.2 is the current version that is in active development. Version 3 is still available while versions 2 and 1 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.[10] Error:Unknown type parameter<templatestyles src="Version/styles.css" />

Version Release date Notes
Unsupported: 1.0.0<templatestyles src="Version/styles.css" /> March 19, 2012
Unsupported: 1.7.0<templatestyles src="Version/styles.css" /> December 1, 2013 Final Release
Unsupported: 1.7.0<templatestyles src="Version/styles.css" /> March 6, 2016 EOL
Unsupported: 2.0.0<templatestyles src="Version/styles.css" /> July 12, 2015
Unsupported: 2.1.0<templatestyles src="Version/styles.css" /> July 8, 2016 Final Release
Unsupported: 2.1.0<templatestyles src="Version/styles.css" /> August 31, 2017 EOL
Supported: 3.0.0<templatestyles src="Version/styles.css" /> July 9, 2016
Supported: 3.5.0<templatestyles src="Version/styles.css" /> February 27, 2017
Supported: 3.6.0<templatestyles src="Version/styles.css" /> August 31, 2017
Supported: 3.6.5<templatestyles src="Version/styles.css" /> May 15, 2018
Supported: 3.7.0<templatestyles src="Version/styles.css" /> June 28, 2018
Supported: 3.8.0<templatestyles src="Version/styles.css" /> August 25, 2018 Final Release
Latest version: 4.0.1<templatestyles src="Version/styles.css" /> February 9, 2019 Current production version
Latest version: 4.0.2<templatestyles src="Version/styles.css" /> March 12, 2019 Current production version

Source: Github[11]

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 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 and runs through the Travis CI continuous integration platform to ensure the builds of the individual framework components are passing.[12]

Pop PHP 4 is currently written for and supports PHP 7.1 or greater and no longer supports PHP 5.6.

The Pop PHP Framework project welcomes community involvement and contribution via the current available channels.[13]

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.[14] 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)
    • Request & response handlers
    • HTTP clients
    • File uploads
  • HTML Form Generation (popphp/pop-form)
    • HTML Form Validation
  • PDF Generation (popphp/pop-pdf)
    • PDF Creation
    • PDF Import
  • Mail (popphp/pop-mail)
    • SMTP support
    • Mail queues
    • IMAP/POP client
  • 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)
  • 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.[15][16][17]

Kettle

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

References

  1. ↑ "Guide to 24 PHP Frameworks". Nico Anastasio. http://anastasionico.uk/blog/guide-to-24-php-frameworks-part-3#pop. 
  2. ↑ "List of Top 10 Best PHP Frameworks". Cats Who Code. https://www.catswhocode.com/blog/top-10-php-frameworks-for-2014. 
  3. ↑ "List of Top 10 Best PHP Frameworks". Mango Media. http://www.themangomedia.com/blog/what-is-php-and-10-best-php-frameworks/. 
  4. ↑ "List of 15 New Best Frameworks". Code Geekz. https://codegeekz.com/best-php-frameworks-2014/. 
  5. ↑ "Best MVC PHP Frameworks for Developers". Best jQuery. http://www.bestjquery.com/2017/07/best-php-frameworks/. 
  6. ↑ "Best PHP Frameworks". Firebear Studios. https://firebearstudio.com/blog/the-best-php-frameworks-2015.html. 
  7. ↑ "Best PHP Frameworks". Indefinite Loop. https://indefiniteloop.com/blog/code/42-php-frameworks-2015.html. 
  8. ↑ "Phire CMS". https://www.phirecms.org/. 
  9. ↑ "Phire CMS on GitHub". https://github.com/phirecms/phirecms. 
  10. ↑ "Github: Pop PHP Framework Changelog". https://github.com/popphp/popphp-framework/blob/master/CHANGELOG.md. 
  11. ↑ "Github: Pop PHP Framework Releases". https://github.com/popphp/popphp-framework/releases. 
  12. ↑ "Travis CI: Pop PHP Framework". https://travis-ci.org/popphp. 
  13. ↑ "Pop PHP Development". https://www.popphp.org/development. 
  14. ↑ "Pop PHP Components". https://github.com/popphp/popphp-framework/blob/master/README.md#overview. 
  15. ↑ "Popcorn". https://www.popphp.org/#popcorn. 
  16. ↑ "Popcorn Overview". https://www.popphp.org/overview#popcorn. 
  17. ↑ "Popcorn on GitHub". https://github.com/popphp/popcorn. 
  18. ↑ "Kettle on GitHub". https://github.com/popphp/pop-kettle. 

Template:PHP Template:Web frameworks