Phalcon需要PHP来运行。它的松耦合设计允许开发人员在没有附加扩展的情况下安装和使用它的功能。某些组件依赖于其他扩展。例如,使用数据库连接将需要 phppdo扩展。如果你的RDBMS是Mysql/MariaDb或Aurora数据库,那么你也需要phpmysqlnd扩展。类似地,要使用PostgreSql数据库时需要php_pgsql扩展。
在提供高性能的同时,Phalcon被设计为尽可能少的使用资源。虽然我们已经在各种低端环境中测试过了(比如0.25 RAM,0.5 CPU),但是你所选择的硬件将取决于你的应用程序需要。
我们的网站和博客(以及其他站点)托管在一个Amazon VM上,有512MB RAM和1个vCPU。
- PHP >= 5.5
你应该始终尝试使用最新版本的Phalcon和PHP来解决问题、增强安全性和性能。PHP 5.5将在不久的将来被弃用,而Phalcon 4 将只支持PHP 7。
- curl
- gettext
- gd2 (为使用 Phalcon\Image\Adapter\Gd 类)
- libpcre3-dev (Debian/Ubuntu),pcre-devel(CentOS),pcre(macOS)
- json
- mbstring
- pdo_*
- fileinfo
- openssl
-
PDO 扩展以及相关RDBMS的具体扩展(如 MySQL,PostgreSql等)
-
OpenSSL 扩展
-
Mbstring 扩展
由于Phalcon被编译为PHP扩展,所以它的安装与其他传统PHP框架有所不同。需要在web服务器上安装和加载一个模块。
在Linux上安装Phalcon,你需要将我们的存储库添加到你的发行版中,然后安装它。
将存储库添加到你的发行版:
稳定版
curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.deb.sh | sudo bash每晚构建版
curl -s https://packagecloud.io/install/repositories/phalcon/nightly/script.deb.sh | sudo bash这只需要做一次,除非你的发行版本发生了变化,或者你想要从稳定版切换到最新构建版本。
要安装Phalcon,你需要在终端上执行以下命令:
PHP 5.x
sudo apt-get update
sudo apt-get install php5-phalconPHP 7
sudo apt-get update
sudo apt-get install php7.0-phalconOndřej Surý
如果你不想用位于 packagecloud.io 的存储库,你可以随时使用 Ondřej Surý 提供的。
安装存储库:
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update然后Phalcon:
sudo apt-get install php-phalcon将存储库添加到你的发行版:
稳定版
curl -s https://packagecloud.io/install/repositories/phalcon/stable/script.rpm.sh | sudo bash每晚构建版
curl -s https://packagecloud.io/install/repositories/phalcon/nightly/script.rpm.sh | sudo bash这只需要做一次,除非你的发行版本发生了变化,或者你想要从稳定版切换到最新构建版本。
要安装Phalcon,你需要在终端上执行以下命令:
PHP 5.x
sudo yum update
sudo yum install php56u-phalconPHP 7
sudo yum update
sudo yum install php70u-phalconRemi
Remi Collet 为基于RPM的安装维护着一个优秀的存储库。你可以在 这里 找到关于如何为你的发行版启用它的说明
在那之后安装Phalcon是很容易的:
yum install php56-php-phalcon3特定体系结构(X86/X64)和PHP(5.5、5.6、7.x)的版本都有提供。
已经为FreeBSD提供了移植版本。安装它你需要执行以下命令:
pkg_add
pkg_add -r phalconSource
export CFLAGS="-O2 --fvisibility=hidden"
cd /usr/ports/www/phalcon
make install clean可以在这里找到安装Phalcon的说明 https://github.com/smoke/phalcon-gentoo-overlay
在macOS系统中,你可以使用brew、macports或源代码来编译和安装这个扩展
- PHP 5.5.x/5.6.x/7.0.x/7.1.x 开发资源
- XCode
brew tap homebrew/homebrew-php
brew install php55-phalcon
brew install php56-phalcon
brew install php70-phalcon
brew install php71-phalconsudo port install php55-phalcon
sudo port install php56-phalcon编辑php.ini文件,并在最后添加:
extension=php_phalcon.so重启你的web服务器。
要在Windows上使用Phalcon,你需要安装phalcon.dll。我们根据目标平台编译了几个DLL,你可以在我们的download页面找到。
认清你的PHP安装和体系结构。如果你下载了错误的DLL,那么它就不会起作用。phpinfo() 包含这些信息。在下面的示例中,我们将需要DLL的NTS版本:
可供使用的DLL有:
| Architecture | Version | Type |
|---|---|---|
| x64 | 7.x | Thread safe |
| x64 | 7.x | Non Thread safe (NTS) |
| x86 | 7.x | Thread safe |
| x86 | 7.x | Non Thread safe (NTS) |
| x64 | 5.6 | Thread safe |
| x64 | 5.6 | Non Thread safe (NTS) |
| x86 | 5.6 | Thread safe |
| x86 | 5.6 | Non Thread safe (NTS) |
| x64 | 5.5 | Thread safe |
| x64 | 5.5 | Non Thread safe (NTS) |
| x86 | 5.5 | Thread safe |
| x86 | 5.5 | Non Thread safe (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
你可以使用相关的包管理器在系统中安装这些包。下面是流行的linux发行版的说明:
Ubuntu
sudo apt-get install php5-dev libpcre3-dev gcc makeSuse
sudo zypper install php5-devel gcc makeCentOS/Fedora/RHEL
sudo yum install php-devel pcre-devel gcc make我们首先需要从Github的存储库克隆Phalcon
git clone https://github.com/phalcon/cphalcon现在构建扩展
cd cphalcon/build
sudo ./install你现在需要添加extension=phalcon.so到你的php.ini然后重启web服务器,以便加载扩展:
# Suse: Add a file called phalcon.ini in /etc/php5/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/php5/apache2/conf.d/ with this content:
extension=phalcon.so
# Ubuntu/Debian with php5-fpm: Add a file called 30-phalcon.ini in /etc/php5/fpm/conf.d/ with this content:
extension=phalcon.so
# Ubuntu/Debian with php5-cli: Add a file called 30-phalcon.ini in /etc/php5/cli/conf.d/ with this content:
extension=phalcon.soPhalcon自动检测你的体系结构,但是,你也可以指定为特定体系结构编译。
cd cphalcon/build
# One of the following:
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
# NOTE: for PHP 7 you have to use
# cd cphalcon/build/php7/32bits
# or
# cd cphalcon/build/php7/64bits
make clean
/opt/php-5.6.15/bin/phpize --clean
export CFLAGS="-O2 --fvisibility=hidden"
./configure --with-php-config=/opt/php-5.6.15/bin/php-config --enable-phalcon
make
make install你现在需要添加extension=phalcon.so到你的php.ini然后重启web服务器,以便加载扩展。
你可以在web服务器根目录中创建一个小脚本,其中有以下内容:
<?php
phpinfo();然后在你的浏览器上加载它。应该有一个关于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查看已安装的模块:
php -m注意:在一些基于Linux的系统中,你可能需要更改两个 php.ini 文件,一个用于你的web服务器(apach/nginx),另一个用于CLI。如果只对web服务器加载了Phalcon,那么你将需要定位CLI php.ini 并为要加载的模块进行必要的添加。
