# Phalcon Framework

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!

## Contents

- Get Started
  - Windows
  - Linux/Unix/Mac
    - Requirements
      - Ubuntu
      - Suse
      - CentOS/Fedora/RHEL
      - macOS(Sierra / El Capitan / Yosemite)
  - OSX MAMP ready extensions
  - Gentoo
  - Compilation
  - Contributing
  - External Links
  - Meet the Incubator
  - Sponsors
  - Backers
  - License

## 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/7.2.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

##### macOS(Sierra / El Capitan / Yosemite)

Using Homebrew

    # brew install php<version>-phalcon
    # available versions 56, 70, 71

    brew install php71-phalcon

## OSX MAMP ready extensions

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

## Gentoo

There is Gentoo ebuilds maintained for the Phalcon Framework: https://github.com/smoke/phalcon-gentoo-overlay

## 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

See CONTRIBUTING.md for details.

## External Links

- Documentation
- Support
- Blog
- Zephir
- Twitter

## 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 LICENSE.txt file for more.