/cphalcon

High performance, full-stack PHP framework delivered as a C extension.

Primary LanguagePHPOtherNOASSERTION

Phalcon Framework

Build Status Windows Build Phalcon Backers OpenCollective OpenCollective

Phalcon is an open source web framework delivered as a C extension for the PHP language providing high performance and lower resource consumption.

A big thank you to our Backers; you rock!

Get Started

Phalcon is written in Zephir/C with platform independence in mind. As a result, Phalcon is available on Microsoft Windows, GNU/Linux, FreeBSD and MacOS. You can either download a binary package for the system of your choice or build it from source.

Windows

To install Phalcon on Windows:

  1. Download Phalcon for Windows
  2. Extract the DLL file and copy it to your PHP extensions directory
  3. Edit your php.ini file and add this line:
    extension=php_phalcon.dll
  4. Finally, restart your web server

Hint: To ensure that your Phalcon installation was successful, debug with

<?php phpinfo(); ?>

and search for a section mentioning the Phalcon extension.

Linux/Unix/Mac

On a Unix-based platform you can easily compile and install the extension from sources.

Requirements

Prerequisite packages are:

  • PHP 5.5.x/5.6.x/7.0.x/7.1.x development resources (PHP 5.3 and 5.4 are no longer supported)
  • g++ >= 4.4 | clang++ >= 3.x | vc++ >= 11
  • GNU make >= 3.81
  • re2c >= 0.13

Ubuntu:

# Use actual PHP development headers and tools here
sudo apt-get install php5-dev libpcre3-dev gcc make re2c

Suse:

# Use actual PHP development headers and tools here
sudo zypper install php5-devel gcc make re2c

CentOS/Fedora/RHEL

# Use actual PHP development headers and tools here
sudo yum install php-devel pcre-devel gcc make re2c

Compilation

Follow these instructions to generate a binary extension for your platform:

git clone git://github.com/phalcon/cphalcon.git
cd cphalcon/build
sudo ./install

If you have specific php versions running

git clone https://github.com/phalcon/cphalcon
cd cphalcon/build
sudo ./install --phpize /usr/bin/phpize5.6 --php-config /usr/bin/php-config5.6

Add the extension to your php.ini:

extension=phalcon.so

Finally, restart the web server.

Contributing

Tests are located in tests/ and use Codeception. Test classes should follow the PSR-2 coding style guide.

OSX MAMP ready extensions

https://github.com/majksner/php-phalcon-mamp

Gentoo

https://github.com/smoke/phalcon-gentoo-overlay

External Links

Meet the Incubator

Our community is developing amazing extra features for Phalcon every day via Incubator. There are resources to enhance your experience with the framework and that enlarge the main features.

Just give it a try and help us improve Phalcon even more!

Sponsors

Become a sponsor and get your logo on our README on Github with a link to your site. [Become a sponsor]

Backers

Support us with a monthly donation and help us continue our activities. [Become a backer]

License

Phalcon is open source software licensed under the New BSD License. See the docs/LICENSE.txt file for more or visit our license page.