C Zephir PHP C++ Other
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

README.md

Ice framework

Simple and fast PHP framework delivered as C-extension.

Latest Stable Version Total Downloads Latest Unstable Version License

Stage

Build Status Dependency Status

How to contribute?
  1. Fork the ice/framework repository.
  2. Create a new branch for each feature or improvement.
  3. Send a pull request from each feature branch to the dev branch*.

*please do not send files from build/ directory (they are generated automatically), just those from the ice/.

Benchmark

RPS

Installation

Ice is a C-extension, so you need to download a binary for your platform or compile it from source code.

Download

Compilation*

  • Compile on Linux/Unix/Mac. There are two ways to compile Ice framework from sources:
  • compile from build/ directory and C-files - recommended for beginners and for production machines; C-files are generated by Ice Team after merge and tests pass
  • build by zephir (generate, compile and install extension) - recommended for developers and for testing next release; by this way you generate C-files from Zep-files, so you can get newest features/fixes but it could be unstable; after generate by zephir the files will be located in the ext/ directory
  • build on Windows

*before compilation please read the Requirements.


Compile from build/:

Clone and install from GitHub:

git clone --depth=1 https://github.com/ice/framework.git
cd framework/
./install
or install using composer:
composer create-project iceframework/framework --no-dev
Add extension to your php.ini:
extension=ice.so

Finally restart the webserver


Build by zephir* (generate, compile and install extension):

By default ./vendor/bin/zephir runs zephir. To build Ice you must run zephir begin in the framework/ directory:
cd framework/
./vendor/bin/zephir build

*if you don't have zephir you need to compile zephir.

Compile zephir
You can install zephir using composer. If you already have ice and you are inside framework/ directory:
composer update
or clone zephir repo:
mkdir vendor/phalcon/ && cd $_
git clone https://github.com/phalcon/zephir.git

# Install zephir
./install

# Create symbolic link
mkdir ../../bin && cd $_
ln -s ../phalcon/zephir/bin/zephir
Run zephir first time:
cd framework/
./vendor/bin/zephir

Requirements

You can build from C-files or build by zephir

To build the PHP extension:
  • gcc >= 4.4/clang++ >= 3.x/vc++ 11
  • gnu make >= 3.81/Windows nmake
  • php development headers and tools
To compile zephir-parser
  • re2c

Ubuntu:

sudo apt-get install php5-dev libpcre3-dev gcc make re2c

Suse:

sudo zypper install php5-devel pcre-devel gcc make re2c

CentOS/Fedora/RHEL

sudo yum install php-devel pcre-devel gcc make re2c

Windows
Zephir Installation

License

Ice is open-sourced software licensed under the New BSD License. See the LICENSE file for more information.


Copyright (c) 2014-2018 Ice Team.