必要条件
Phalconを利用するにはPHPが実行できる必要があります。 疎結合に設計されている為、開発者はPhalconをインストールし、追加の拡張モジュールなしに利用することができます。 特定のコンポーネントは他の拡張モジュールに依存します。 たとえば、データベース接続を使用するには、php_pdo
拡張モジュールが必要です。 RDBMSがMySQL/MariaDBまたはAuroraデータベースの場合は、php_mysqlnd
拡張モジュールも必要です。 同様に、PhalconでPostgreSQLデータベースを使用するには、php_pgsql
拡張モジュールが必要です。
ハードウェア
Phalconは、高いパフォーマンスを提供しながら、可能な限り少ないリソースを使用するように設計されています。 さまざまなローエンド環境 (0.25GB RAM、0.5 CPUなど) でPhalconをテストしましたが、選択するハードウェアはアプリケーションのニーズによって異なります。
当社のウェブサイトとブログ(および他のサイト) は、512MBのRAMと1つのvCPUを備えたAmazon VM上でホストされています。
ソフトウェア
バグ、セキュリティ強化、パフォーマンスの為に常に最新のPhalconとPHPのバージョンを使う様にしてください。 PHP 5.5 は近い将来にサポートされなくなり、Phalcon 4 では PHP 7 のみがサポートされるようになります。
Phalcon を実行するためには、最低限以下の拡張機能が必要です。
curl
gettext
gd2
(Phalcon\Image\Adapter\Gd
クラスを使う場合)
libpcre3-dev
(Debian/Ubuntu), pcre-devel
(CentOS), pcre
(macOS)
json
mbstring
pdo_*
fileinfo
openssl
アプリケーションのニーズに応じた追加の依存
インストール
Since Phalcon is compiled as a PHP extension, its installation is somewhat different than any other traditional PHP framework. Phalcon needs to be installed and loaded as a module on your web server.
Linux
Linux で Phalcon をインストールするためには、使用しているディストリビューションにリポジトリを追加する必要があります。
debベースのディストリビューション (Debian、Ubuntu など)
リポジトリのインストール
ディストリビューションにリポジトリを追加します。
安定版
curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.deb.sh | sudo bash
または
Nightly リリース
curl -s https://packagecloud.io/install/repositories/phalcon/nightly/script.deb.sh | sudo bash
この作業は、あなたがディストリビューションを変更したり安定板とナイトリーを切り替えるといった事情がなければ、実施は一度だけしか必要ありません。
Phalcon のインストール
次のコマンドを実行して、Phalcon をインストールします。
PHP 5.x
sudo apt-get update
sudo apt-get install php5-phalcon
PHP 7
sudo apt-get update
sudo apt-get install php7.0-phalcon
追加のPPA
Ondřej Surý
packagecloud.ioでリポジトリを使用したくない場合は、OndřejSurýが提供するリポジトリをいつでも使用できます。
リポジトリのインストール:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
Phalconのインストール:
sudo apt-get install php-phalcon
RPM ベースのディストリビューション (CentOS、Fedora 等)
リポジトリのインストール
ディストリビューションにリポジトリを追加します。
安定版
curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.deb.sh | sudo bash
または
Nightly リリース
curl -s https://packagecloud.io/install/repositories/phalcon/nightly/script.rpm.sh | sudo bash
この作業は、あなたがディストリビューションを変更したり安定板とナイトリーを切り替えるといった事情がなければ、実施は一度だけしか必要ありません。
Phalcon のインストール
次のコマンドを実行して、Phalcon をインストールします。
PHP 5.x
sudo yum update
sudo yum install php56u-phalcon
PHP 7
sudo yum update
sudo yum install php70u-phalcon
追加のRPM
Remi
Remi Colletは、RPMベースのインストールのための優れたリポジトリをメンテナンスしています。 こちらのディストリビューションを有効にする方法についてはこちらをご覧ください。
それ以降、Phalconをインストールするのは簡単です:
yum install php56-php-phalcon3
追加のバージョンには、アーキテクチャー固有のもの (x86/x64) とPHP固有のもの (5.5, 5.6, 7.x) があります
FreeBSD
A port is available for FreeBSD. To install it you will need to issue the following commands:
pkg_add
ソースコード
export CFLAGS="-O2 --fvisibility=hidden"
cd /usr/ports/www/phalcon
make install clean
Gentoo
Phalconをインストールするためのオーバーレイは、https://github.com/smoke/phalcon-gentoo-overlayにあります。
macOS
macOS では、brew
、macports
またはソースコードから拡張機能をコンパイルしたりインストールしたりすることが可能です。
必要条件
- PHP 5.5.x/5.6.x/7.0.x/7.1.x
- XCode
Brew
homebrew/phpタップが廃止され、削除されているので、Phalconのカスタムリポジトリが作成されました。
PHP 5.5 has not been ported to homebrew/core and as such no longer exists. PHP 7.2 on the other hand has been added.
brew tap tigerstrikemedia/homebrew-phalconphp
brew install php56-phalcon
brew install php70-phalcon
brew install php71-phalcon
brew install php72-phalcon
MacPorts
sudo port install php55-phalcon
sudo port install php56-phalcon
php.ini ファイルを編集し、末尾に下記を追記します:
Webサーバを再起動します。
Windows
Windows で Phalcon を使用するためには、phalcon.dll をインストールする必要があります。 プラットフォームに応じて、複数の DLL ファイルをコンパイルしています。 Dll は、ダウンロード のページで見つけることができます。
アーキテクチャと同様に、PHP がインストールされているかを識別します。 間違った DLL をダウンロードした場合、Phalcon は動作しません。 この情報は phpinfo()
に含まれています。 次の例では、DLLのNTS バージョンを必要としています:

利用可能な DLL は次のとおりです。
アーキテクチャー |
バージョン |
タイプ |
x64 |
7.x |
スレッドセーフ |
x64 |
7.x |
非スレッドセーフ (NTS) |
x86 |
7.x |
スレッドセーフ |
x86 |
7.x |
非スレッドセーフ (NTS) |
x64 |
5.6 |
スレッドセーフ |
x64 |
5.6 |
非スレッドセーフ (NTS) |
x86 |
5.6 |
スレッドセーフ |
x86 |
5.6 |
非スレッドセーフ (NTS) |
x64 |
5.5 |
スレッドセーフ |
x64 |
5.5 |
非スレッドセーフ (NTS) |
x86 |
5.5 |
スレッドセーフ |
x86 |
5.5 |
非スレッドセーフ (NTS) |
php.ini ファイルを編集し、末尾に下記を追記します:
extension=php_phalcon.dll
Webサーバを再起動します。
ソースコードからコンパイル
ソースコードからのコンパイルは、ほとんどの環境 (Linux/macOS) で同様に行えます。
必要条件
- PHP 5.5.x/5.6.x/7.0.x/7.1.x
- GCCコンパイラ (Linux/Solaris/FreeBSD) または Xcode (macOS)
- re2c >= 0.13
- libpcre-dev
You can install these packages in your system with the relevant package manager. Instructions for popular linux distributions are below:
Ubuntu
sudo apt-get install php5-dev libpcre3-dev gcc make
Suse
sudo zypper install php5-devel gcc make
CentOS/Fedora/RHEL
sudo yum install php-devel pcre-devel gcc make
Phalconのコンパイル
まず、GitHub のリポジトリから Phalcon のソースコードをクローンする必要があります。
git clone https://github.com/phalcon/cphalcon
その後、拡張機能をビルドします。
cd cphalcon/build
sudo ./install
次に、PHP ini ファイルにextension=phalcon.so
と追記し、拡張機能が読み込まれるように、ウェブサーバを再起動する必要があります。
# Suse の場合: /etc/php5/conf.d/ に下記内容が書いてある phalcon.ini を追加します:
extension=phalcon.so
# CentOS/RedHat/Fedora の場合: /etc/php.d/ に下記内容が書いてある phalcon.ini を追加します:
extension=phalcon.so
# Ubuntu/Debian、Apache2 で構成している場合: /etc/php5/apache2/conf.d/ に、下記内容の 30-phalcon.ini を追加します:
extension=phalcon.so
# Ubuntu/Debian、php5-fpm で構成している場合: /etc/php5/fpm/conf.d/ に、下記内容の 30-phalcon.ini を追加します:
extension=phalcon.so
# Ubuntu/Debian、php5-cli で構成している場合: /etc/php5/cli/conf.d/ に、下記内容の 30-phalcon.ini を追加します:
extension=phalcon.so
高度なコンパイル
Phalcon は自動的にシステムのアーキテクチャを判定しますが、指定したアーキテクチャ向けにコンパイルすることを強制することができます:
cd cphalcon/build
# 次のどれか一つ:
sudo ./install --arch 32bits
sudo ./install --arch 64bits
sudo ./install --arch safe
自動判別インストーラが失敗する場合は手動でビルドしてみます:
git clone https://github.com/phalcon/cphalcon
# cd cphalcon/build/php5/32bits
cd cphalcon/build/php5/64bits
# NOTE: for PHP 7 you have to use
# cd cphalcon/build/php7/32bits
# or
# cd cphalcon/build/php7/64bits
make clean
phpize --clean
export CFLAGS="-O2 --fvisibility=hidden"
./configure --enable-phalcon
make
make install
特定のPHPバージョンを実行している場合:
git clone https://github.com/phalcon/cphalcon
# cd cphalcon/build/php5/32bits
cd cphalcon/build/php5/64bits
# 注: PHP7の場合
# cd cphalcon/build/php7/32bits
# or
# cd cphalcon/build/php7/64bits
make clean
phpize --clean
export CFLAGS="-O2 --fvisibility=hidden"
./configure --enable-phalcon
make
make install
次に、PHP ini ファイルにextension=phalcon.so
と追記し、拡張機能が読み込まれるように、ウェブサーバを再起動する必要があります。
Webサーバのルートに次のような小さなスクリプトを作成します:
そしてウェブブラウザで読み込みます。 Phalconのセクションがあるはずです。 存在しない場合は、拡張モジュールが正しくコンパイルされていること、php.ini
に必要な変更を加えたこと、そしてWebサーバーが再起動されていることを確認してください。
コマンドラインからインストール内容を確認することもできます:
php -r 'print_r(get_loaded_extensions());'
これは次のような内容を出力します:
Array
(
[0] => Core
[1] => libxml
[2] => filter
[3] => SPL
[4] => standard
[5] => phalcon
[6] => pdo_mysql
)
CLIを使用してモジュールをインストールすることもできます:
一部のLinuxベースのシステムでは、Webサーバー(Apache/Nginx)用とCLI用の2つのphp.ini
ファイルを変更する必要があります。 PhalconがWebサーバーだけにロードされている場合は、CLI php.ini
を探して、ロードするモジュールに必要な追加を行う必要があります。