セクション

インストール


必要条件

PHP 7.2

Phalcon v4 は、 PHP 7.2 もしくはそれ以降のバージョンのみをサポートしています。 2年前にリリースされたPHP 7.1は、サポートが失効したため、継続的にサポートされているPHPバージョンに従うことにしました。

PSR

Phalcon には PSR 拡張機能が必要です。 拡張機能は、こちら のGitHubリポジトリからダウンロードしてコンパイルできます。 拡張機能のインストール手順は、リポジトリの README に記載されています。 拡張機能をコンパイルしてシステムで使用可能になったら、それを php.ini でロードする必要があります。 下記のように、1行を追加してください。

extension=psr.so

これは、下記の前に追加するようにしてください。

extension=phalcon.so

または、一部のディストリビューションでは、 ini ファイル名に数字のプレフィックスが追加されます。 その場合は、Phalconに大きい数値を指定してください(例: 50-phalcon.ini )。

Peclを使用する場合は、この拡張機能が自動的にインストールされます。

PDO

Phalconは疎結合であるため、追加の拡張機能を必要とせずに機能を公開できます。 ただし、特定のコンポーネントは追加の拡張機能に依存します。 データベースへの接続とアクセスが必要な場合は、 php_pdo 拡張機能をインストールする必要があります。 RDBMSが MySQL / MariaDB または Aurora の場合、php_mysqlnd 拡張機能も必要です。 同様に、PhalconでPostgreSQLデータベースを使用するには、php_pgsql拡張モジュールが必要です。

ハードウェア

Phalconは、高いパフォーマンスを提供しつつ、可能な限り少ないリソースを使用するようにデザインされています。 さまざまなローエンド環境 (0.25GB RAM、0.5 CPUなど) でPhalconをテストしましたが、選択するハードウェアはアプリケーションのニーズによって異なります。

ここ数年、私たちは512 MBのRAMと1つのvCPUを備えたAmazon VMで、ウェブサイトとブログをホストしています。

ソフトウェア

NOTE: バグ、セキュリティ強化、パフォーマンスの為に常に最新のPhalconとPHPのバージョンを使う様にしてください。

PHP 7.2または以降のバージョンと共に、あなたのアプリケーションとPhalconコンポーネントに応じて、次の拡張機能をインストールする必要があります。

NOTE: これらのパッケージのインストールは、オペレーティングシステムと(存在する場合に) 使用するパッケージマネージャーによって異なります。 これらの拡張機能のインストール方法については関連ドキュメントを参照してください。

libpcre3-devパッケージでは、次のコマンドを使用できます。

Pecl

The Pecl installation method is available for Windows, Linux and MacOS. Under windows pre-compiled dll files will be used. Under Linux and MacOS it will compile Phalcon locally so it could be faster to use a different installation method on these platforms. To install using Pecl make sure you have pecl/pear installed.

pecl channel-update pecl.php.net
pecl install phalcon

Debian

sudo apt-get install libpcre3-dev

その後、もう一度Phalconをインストールしてみてください。

CentOS

sudo yum install pcre-devel

Mac/Osx using Brew

brew install pcre

brewがない場合、PCREのWebサイトにアクセスし、最新のpcreをダウンロードする必要があります。

tar -xzvf pcre-8.42.tar.gz
cd pcre-8.42
./configure --prefix=/usr/local/pcre-8.42
make
make install
ln -s /usr/local/pcre-8.42 /usr/sbin/pcre
ln -s /usr/local/pcre-8.42/include/pcre.h /usr/include/pcre.h

Maverickの場合

brew install pcre

エラーが発生した場合、次のコマンドを実行してみてください。

sudo ln -s /opt/local/include/pcre.h /usr/include/
sudo pecl install apc 

Installation Platforms

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

Mainlineリリース (alpha, beta, その他)

curl -s https://packagecloud.io/install/repositories/phalcon/mainline/script.deb.sh | sudo bash

NOTE: This only needs to be done only once, unless your distribution changes or you want to switch from stable to nightly builds.

Phalcon のインストール

次のコマンドを実行して、Phalcon をインストールします。

sudo apt-get update
sudo apt-get install php7.2-phalcon
追加のPPA

Ondřej Surý

If you do not wish to use our repository at packagecloud.io, you can always use the one offered by Ondřej Surý.

Installation of the repo:

sudo add-apt-repository ppa:ondrej/php
sudo apt-get update

and Phalcon:

sudo apt-get install php-phalcon4

RPM ベースのディストリビューション (CentOS、Fedora 等)

リポジトリのインストール

ディストリビューションへのリポジトリの追加方法:

安定版リリース

curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.rpm.sh | sudo bash

Nightly リリース

curl -s https://packagecloud.io/install/repositories/phalcon/nightly/script.rpm.sh | sudo bash

Mainlineリリース (alpha, beta, その他)

curl -s https://packagecloud.io/install/repositories/phalcon/mainline/script.rpm.sh | sudo bash

NOTE: This only needs to be done only once, unless your distribution changes or you want to switch from stable to nightly builds.

Phalcon のインストール

To install Phalcon you need to issue the following commands in your terminal:

sudo yum update
sudo yum install php72u-phalcon
Additional RPMs

Remi

Remi Collet maintains an excellent repository for RPM based installations. You can find instructions on how to enable it for your distribution here.

Installing Phalcon after that is as easy as:

yum install php72-php-phalcon4

Additional versions are available both architecture specific (x86/x64) as well as PHP version specific

FreeBSD

FreeBSDではportsコレクションが利用できます。 インストールするには、次のコマンドを実行してください:

pkg_add
pkg_add -r phalcon4
ソースコードからコンパイル
cd /usr/ports/www/phalcon4

make install clean
Gentoo

An overlay for installing Phalcon can be found here

Raspberry Pi

macOS

It is also necessary to increase the swap file from the default 100 MB to at least 2000 MB. Because, the compiler lacks RAM.

sudo -s
nano /etc/dphys-swapfile

Replacing CONF_SWAPSIZE=100 with CONF_SWAPSIZE=2000

After saving the setting, restart the daemon:

/etc/init.d/dphys-swapfile stop
/etc/init.d/dphys-swapfile start

macOS

Brew includes binary packages so you don’t need to compile Phalcon yourself. If you want to compile the extension yourself you need the following dependencies installed:

Compilation requirements

  • PHP 7.x development resources
  • XCode

Brew

Binary installation (preferred):

brew tap phalcon/extension https://github.com/phalcon/homebrew-tap
brew install phalcon

Compile phalcon:

brew tap phalcon/extension https://github.com/phalcon/homebrew-tap
brew install phalcon --build-from-source 

MacPorts

sudo port install php72-phalcon
sudo port install php73-phalcon

Edit your php.ini file and then append at the end:

extension=php_phalcon.so

Restart your webserver.

PHPBrew (macOS/Linux)

PHPBrew is an excellent way to manage multiple versions of PHP and PHP extensions on your system(s). Installation instructions for PHPBrew can be found here

If you’re using PHPBrew, you can install Phalcon using the following:

sudo phpbrew ext install phalcon

You can install the PSR dependency via phpbrew as well if needed:

sudo phpbrew ext install psr

Windows

To use Phalcon on Windows, you will need to install the phalcon.dll. We have compiled several DLLs depending on the target platform. The DLLs can be found in our download page.

Identify your PHP installation as well as architecture. If you download the wrong DLL, Phalcon will not work. phpinfo() contains this information. In the example below, we will need the NTS version of the DLL:

phpinfo

The available DLLs are:

アーキテクチャー バージョン Type
x64 7.x スレッドセーフ
x64 7.x 非スレッドセーフ (NTS)
x86 7.x スレッドセーフ
x86 7.x 非スレッドセーフ (NTS)

Edit your php.ini file and then append at the end:

extension=php_phalcon.dll

Restart your webserver.

ソースコードからコンパイル

ソースコードからのコンパイルは、ほとんどの環境 (Linux/macOS) で同じ様に行えます。

Requirements

  • PHP 7.2.x/7.3.x development resources
  • GCCコンパイラ (Linux/Solaris/FreeBSD) または Xcode (macOS)
  • re2c >= 0.13
  • libpcre-dev

Compilation

Download the latest zephir.phar from here. Add it to a folder that can be accessed by your system.

Clone the repository

git clone https://github.com/phalcon/cphalcon

Phalconのコンパイル

cd cphalcon/
git checkout tags/v4.0.0 ./
zephir fullclean
zephir build

Check the module

php -m | grep phalcon

You will now need to add extension=phalcon.so to your PHP ini and restart your web server, so as to load the extension.

; Suse: Add a File Called Phalcon.ini in /etc/php7/conf.d/ with This Content:
extension=phalcon.so

; CentOS/RedHat/Fedora: Add a File Called Phalcon.ini in /etc/php.d/ with This Content:
extension=phalcon.so

; Ubuntu/Debian with Apache2: Add a File Called 30-phalcon.ini in /etc/php7/apache2/conf.d/ with This Content:
extension=phalcon.so

; Ubuntu/Debian with Php7-fpm: Add a File Called 30-phalcon.ini in /etc/php7/fpm/conf.d/ with This Content:
extension=phalcon.so

; Ubuntu/Debian with Php7-cli: Add a File Called 30-phalcon.ini in /etc/php7/cli/conf.d/ with This Content:
extension=phalcon.so

The instructions above will compile and install the module on your system. You can also compile the extension and then add it manually in your ini file:

cd cphalcon/
git checkout tags/v4.0.0 ./
zephir fullclean
zephir compile
cd ext
phpize
./configure
make && make install

If you use the above method you will need to add the extension=phalcon.so in your php.ini both for CLI and web server.

Tuning Build

By default we compile to be as compatible as possible with all processors (gcc -mtune=native -O2 -fomit-frame-pointer). If you would like instruct the compiler to generate optimized machine code that matches the processor where it is currently running on you can set your own compile flags by exporting CFLAGS before the build. For example

export CFLAGS="-march=native -O2 -fomit-frame-pointer"
zephir build

This will generate the best possible code for that chipset but will likely break the compiled object on older chipsets.

Shared Hosting

Running your application on shared hosting might restrict you in installing Phalcon, especially if you do not have root access. Some web hosting control panels luckily have Phalcon support.

cPanel & WHM

cPanel & WHM support Phalcon using Easy Apache 4 (EA4). You can install Phalcon by enabling the module in Easy Apache 4 (EA4).

Plesk

The plesk control panel doesn’t have Phalcon support but you can find installation instructions on the Plesk website