Phalcon (framework)
{{Short description|PHP open-source web framework}}
{{More citations needed|date=April 2020}}
{{Infobox software
| name = Phalcon
| logo = Phalcon-hires.png
| logo upright = yes
| logo_alt = Phalcon Framework Logo
| screenshot =
| caption =
| developer = Andres Gutierrez and others
| released = {{release date|2012|11|14}}{{Cite web| url= https://github.com/phalcon/cphalcon/releases/tag/phalcon-v0.4.5| title= Release Version 0.4.5 · phalcon/cphalcon| date= 2012-11-14| access-date= 2015-03-09| website= github.com}}
| latest release version = 5.8.0
| latest release date = {{start date and age|2024|07|09|df=yes}}{{cite web | url=https://github.com/phalcon/cphalcon/releases | title= GitHub Repository Release Notes - Phalcon Framework | publisher=Phalcon Franework | access-date = 2024-07-09}}
| latest preview version = 5.8.0
| latest preview date = {{start date and age|2024|07|09|df=yes}}
| operating system =
| platform = Unix, Linux, Mac OS X, Windows{{cite web|url=https://phalcon.io/en-us/download|title=Download Phalcon for Linux/Unix/Mac|work=phalcon.io}}
| language =
| programming language = Zephir, C, PHP
| license = BSD License{{cite web|url=https://github.com/phalcon/cphalcon/blob/master/docs/LICENSE.md|title=cphalcon/LICENSE.md at master · phalcon/cphalcon · GitHub|work=GitHub}}
| genre = Web framework
| website = {{Official URL}}
}}
Phalcon is a PHP web framework based on the model–view–controller (MVC) pattern. Originally released in 2012, it is an open-source framework licensed under the terms of the BSD License.
Unlike other PHP frameworks that are written purely in PHP, Phalcon is implemented as a web server extension written in Zephir and C, aiming to boost execution speed, reduce resource usage, and handle more HTTP requests per second than comparable frameworks written primarily in PHP. One drawback of this approach is that root/administrative access is required on the server to install Phalcon by building a custom binary or using a precompiled one.{{cite web
| url = http://systemsarchitect.net/is-phalcon-the-promised-land-for-php/
| title = Is Phalcon the promised land for PHP?
| date = 2013-05-09 | access-date = 2015-03-14
| author = Lukasz Kujawa | website = systemsarchitect.net
}}
History
Phalcon was created by Andrés Gutiérrez and collaborators looking for a new approach to traditional web application frameworks written in PHP. The original draft of the framework in 2011 was called "Spark",{{cite web
| url = http://phalcon.io/interview-with-phalconphp-creator-andres-guitierrez
| title = Interview with PhalconPHP Creator Andrés Gutiérrez
| date = 2015-05-19 | access-date = 2015-05-23
| website = phalcon.io
}} the name was later changed to Phalcon, representing the words "PHP" and "falcon". Phalcon's initial release was made available on November 14, 2012.
Phalcon 0.3.5 includes an ORM written in C, MVC components, and cache components. This release was followed by the Phalcon 0.5.0 that brought a high-level dialect of SQL called PHQL, and Phalcon 0.6.0 that introduced Volt, a template engine similar to Jinja. Phalcon 1.0 was released on March 22, 2013.{{cite web
| url = https://github.com/phalcon/cphalcon/blob/master/resources/CHANGELOG-1.x.md#100-2013-03-22
| title = CHANGELOG-1.x.md at master
| date = 2017-08-06 | access-date =2018-12-19
| website = github.com
}} with Phalcon 1.3 being the last minor release in that series. Phalcon 2.0 saw most of the project ported from C to Zephir.{{cite web
| url = https://github.com/phalcon/cphalcon/blob/master/resources/CHANGELOG-2.0.md
| title = CHANGELOG-2.0.md at master
| date = 2015-04-17 | access-date =2015-04-17
| website = github.com
}}
= v3 =
Phalcon 3.0.0 was released on 29 July 2016,{{cite web
| url = https://blog.phalcon.io/post/phalcon-3-0-0-released
| title = Phalcon 3.0.0 released - Phalcon Framework
| date = 2016-07-29 | access-date =2016-07-29
| website = phalcon.io
}} this major release includes support for PHP 7 as well as being Phalcon's first LTS (Long Term Support) release. Phalcon also adopted SemVer for their next releases versioning.{{cite web
| url = https://github.com/phalcon/cphalcon/blob/master/resources/CHANGELOG-3.0.md
| title = CHANGELOG-3.0.md at master
| date = 2016-07-29 | access-date =2016-07-29
| website = github.com
}}
= v4 =
Phalcon 4.0.0 was released on 21 December 2019,{{cite web
| url = https://blog.phalcon.io/post/phalcon-4-0-0-released
| title = Phalcon 4.0.0 released - Phalcon Framework
| date = 2019-12-21 | access-date =2019-12-21
| website = phalcon.io
}} this major release includes support for PHP 7.2, 7.3 and 7.4 has stricter Interfaces and support PSR-3, PSR-7, PSR-11 (proxy), PSR-13, PSR-16, PSR-17.{{cite web
| url = https://github.com/phalcon/cphalcon/blob/master/resources/CHANGELOG-4.0.md
| title = CHANGELOG-4.0.md at master
| date = 2019-12-21 | access-date =2019-12-21
| website = github.com
}}
= v5 =
On 19 August 2020,{{Cite web|date=2020-08-19|title=The Future of Phalcon|url=https://blog.phalcon.io/post/the-future-of-phalcon|access-date=2020-09-25|website=Phalcon Blog|language=en}} it was announced that Serghei Iakovlev, one of the core contributors on the Zephir language was stepping down from the project. Antonio Braga and Kleber Faustino took over the maintenance of Zephir as well as the Zephir Parser, providing much needed support and fixes to long standing bugs. Nikolaos Dimopoulos{{cite web| url = https://niden.net | title = niden.net | date = 2020-08-19 | access-date = 2020-08-19 | website = niden.net }} took over the full maintenance of Phalcon.
The team decided to change direction, offering v5 as a PHP extension with support for PHP 7.4 and 8.0+. For v6, Phalcon will be offered as a pure PHP implementation and will support PHP versions 8.0+. However, there will also be an extension available, for those that need extra performance. The new extension will work in parallel with v6.
In v5, support for PSR interfaces has been removed.{{Cite web| url = https://blog.phalcon.io/post/status-update-psr-packagecloud | title = Status Update - PSR - Packagecloud | date = 2022-03-30 | access-date = 2022-03-30 | website= phalcon.io }} Repositories with proxy classes that implement PSR were made available for those that need these classes. Additionally, the Packagecloud repositories have been discontinued, leaving PECL the official installation source for Phalcon (other than building it from sources).
During a Phalcon Hangout on 6 September 2020,{{Cite web|date=2020-09-04|title=Community Hangout and Update - 2020-09-06|url=https://blog.phalcon.io/post/community-hangout-and-update-2020-09-06|access-date=2020-09-25|website=Phalcon Blog|language=en}} the team announced that work has started on Phalcon 5. With this announcement, the projects new repositories were officially made public.
Phalcon v5.0.0 was released during a live Hangout{{Cite web|title=Live Release v5.0.0|url=https://blog.phalcon.io/post/phalcon-v5-0-0-and-v5-0-1-released|date=2022-09-23|access-date=2022-09-23|website=Phalcon Blog|language=en}} on September 23, 2022. Soon after, a bug was discovered and the team released v5.0.1{{cite web
| url = https://github.com/phalcon/cphalcon/blob/master/resources/CHANGELOG-5.0.md
| title = CHANGELOG-5.0.md at master
| date = 2022-09-23 | access-date=2022-09-23
| website = github.com
}}
Phalcon v5.5.0 was released on Christmas Day{{Cite web|title=Merry Christmas and Phalcon 5.5.0 Released|url=https://blog.phalcon.io/post/merry-christmas-and-phalcon-5-5-0-released|date=2023-12-25|access-date=2023-12-25|website=Phalcon Blog|language=en}} on December 25, 2023. In this release, the team dropped support for PHP 7.4 and only supports PHP 8.0+. This was also announced in a Community Hangout two days earlier.{{cite web
| url = https://www.youtube.com/watch?v=qV6OxeW1e_Q
| title = Community Hangout and Update - 2023-12-23
| date = 2023-12-22 | access-date=2023-12-22
| website = Phalcon PHP Framework Youtube Channel
}}
= Release history =
class="wikitable mw-collapsible"
! Version ! Release date ! PHP version |
{{Version |o |0.3}}
| November 14, 2012 | |
---|
{{Version |o |0.4}}
| June 02, 2012 | |
{{Version |o |0.5}}
| September 17, 2012 | |
{{Version |o |0.6}}
| November 11, 2012 | |
{{Version |o |0.7}}
| December 12, 2012 | |
{{Version |o |0.8}}
| January 09, 2013 | |
{{Version |o |0.9}}
| February 05, 2013 | |
{{Version |o |1.0}}
| March 21, 2013 | |
{{Version |o |1.3}}
| March 17, 2014 | |
{{Version |o |2.0}}
| April 17, 2015 | |
{{Version |o |3.0}}
| July 29, 2016 | style="text-align:right;"| 5.6-7.0 |
{{Version |o |4.0}}
| December 21, 2019 | style="text-align:right;"| 7.2-7.4 |
{{Version |o |5.0}}
| September 23, 2022 | style="text-align:right;"| 7.4-8.2 |
{{Version |o |5.4}}
| October 25, 2023 | style="text-align:right;"| 7.4-8.2 |
{{Version |o |5.5}}
| December 25, 2023 | style="text-align:right;"| 8.0-8.3 |
{{Version |p |5.6}}
| January 09, 2024 | style="text-align:right;"| 8.0-8.3 |
{{Version |co |5.7}}
| May 17, 2024 | style="text-align:right;"| 8.0-8.3 |
{{Version |c |5.8}}
| July 09, 2024 | style="text-align:right;"| 8.0-8.3 |
{{Version |l |show=11111}}
Source: Phalcon
See also
References
{{Reflist}}
External links
- {{Official website}}
- {{GitHub|phalcon/cphalcon}}
{{PHP}}
{{Web frameworks}}