Phalcon和Yaf一样,都是C写的PHP扩展,性能相对于Laravel、Yii等框架相对快一些。Phalcon相对于Yaf来说,优势在于有完善的一套体系,例如代码生成,缓存,ORM,队列等。Yaf其实就是一个简单的MVC,不过毕竟着重点不一样,Yaf其实搭配一些ORM,缓存,一些基本的项目也就足够用了。这里我们不探讨那个框架更好,还是直入主题,一起来看看Phalcon究竟如何使用。
安装
官方文档中有很多种操作系统的安装方法,其实很简单就是一个扩展,只需要找到相应的PHP版本,把扩展添加到php.ini中即可。
Mac OS X
1 2 |
brew search phpxx-phalcon brew install phpxx-phalcon |
xx代表php对应的版本,本文中的php版本为5.5。一般来讲,brew 会安装在 /usr/local/Cellar/php55-phalcon,并且生成/usr/local/etc/php/5.5/conf.d/ext-phalcon.ini
如果你已经指定额外配置文件路径 Scan this dir for additional .ini files => /usr/local/etc/php/5.5/conf.d
那么直接php -m 查看下扩展是否安装成功就OK了
Linux
如果能用yum、apt-get,那么和mac下基本类似,实在不行就找到对应版本的.so文件 添加到php扩展即可。
Windows
同上找到相应版本的.dll添加php 扩展
创建你的项目
这里我们直接用phalcon提供的tools来生成,首先要安装tools,官方提供了各种系统的安装,这里简单介绍下mac下的安装。
1 2 3 |
wget -q --no-check-certificate -O phalcon-tools.zip http://github.com/phalcon/phalcon-devtools/zipball/master unzip -q phalcon-tools.zip mv phalcon-phalcon-devtools-* phalcon-tools |
这一步操作很简单 在github打包下载phalcon-tools,我在下载的时候发现没反应,就直接在github上下载好,rename下放到指定位置就行了
接下来就是配置环境变量
1 2 |
export PATH=$PATH:/Users/scott/phalcon-tools export PTOOLSPATH=/Users/scott/phalcon-tools |
这种方法只是临时生效,我用的是zsh,所以我直接把这段话放到了.zshrc中,每次打开终端都会生效,方便了许多,如果你是其他系统,只需要配置相应的环境变量即可。
1 2 |
ln -s ~/phalcon-tools/phalcon.php ~/phalcon-tools/phalcon chmod +x ~/phalcon-tools/phalcon |
这里要注意你的路径是否正确,然后你就可以测试一下是否成功,打开终端,输入phalcon commands
1 2 3 4 5 6 7 8 9 10 11 12 13 |
$ phalcon commands Phalcon DevTools (2.0.8) Available commands: commands (alias of: list, enumerate) controller (alias of: create-controller) model (alias of: create-model) all-models (alias of: create-all-models) project (alias of: create-project) scaffold (alias of: create-scaffold) migration (alias of: create-migration) webtools (alias of: create-webtools) |
接下来,切换到你的workspace,生成你的项目
1 |
phalcon project project-name |
然后通过nginx或者apache将路径指向入口文件/public/,通过浏览器访问会出现
Congratulations!
You’re now flying with Phalcon. Great things are about to happen!
This page is located at views/index/index.volt
启用webtools
切换到你的项目中,然后输入
1 |
phalcon webtools enable |
会出现以下提示,并在public目录下生成webtools.php
Success: Webtools successfully enabled!
注意:如果你是通过xxx.com/webtools.php
会出现js 和 css加载不上的问题,因为默认配置文件中的路径是http://host/phalcon/***
需要修改/app/config/config.php application 中的 baseUrl 修改为“/”即可
然后需要重新禁用,再启用webtools
1 2 |
phalcon webtools disable phalcon webtools enable |
集成PhpStrom代码提示
在你的project下面的External Libraries上点击右键找到Configure PHP Include Path,选中后找到Include path 西面的“+”图标
选中/phalcon-tools/ide/2.0.9/Phalcon路径,确定即可。
这样一来,编译器再也不会提醒错误,还有提醒功能,开发效率明显提高!