安装 Phalcon
Phalcon 的安装和更新也相当简单:
1) 下载 cphalcon
源码进行安装,生成 phalcon.so 扩展文件:
$ git clone git://github.com/phalcon/cphalcon.git
$ cd cphalcon/build
$ git checkout 1.3.3
$ sudo ./install
2) 添加扩展到 php.ini:extension=phalcon.so
。
3) 重启 Apache 或 重新加载 php-fpm。
至此,PhalconPHP 框架扩展安装完成。
我们使用 php -m
看一下:
$ php -m | grep phalcon
falcon
安装 phalcon-devtools
首先下载 phalcon devtools:
$ cd /var/www/ # Web Server 根目录
$ git clone https://github.com/phalcon/phalcon-devtools.git
$ cd phalcon-devtools/
$ ls
composer.json
docs
ide # PhpStorm 自动提示时会用
package.xml
phalcon.bat # windows 下脚本入口文件
phalcon-completion.bash
phalcon.pear
phalcon.php # 主要命令脚本文件
phalcon.sh # 脚本入口文件
README.md
resources # WEB 管理界面使用的 JS/CSS 资源
scripts # 命令的具体实现
templates # 基本模板数据文件,如生成项目时的一些默认文件
webtools.php # WEB 管理界面,通过 --enable-webtools 启用
为 phalcon.php 作软链,方便使用:
$ sudo ln -s $PWD/phalcon.php /usr/bin/phalcon
命令行输入 phalcon
:
$ phalcon
Phalcon DevTools (1.3.3)
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
migration
webtools
以后所有 生成项目
,生成控制器
,生成数据模型
等便捷的操作,都可以使用 phalcon
命令加相应参数来做。
如果你对命令行不熟悉,还可以 使用 WEB 管理界面,实现以上功能。
使用 Phalcon 开发工具,创建项目
现在我们已经有了 phalcon
命令,先创建一个项目:
$ cd ..
# phalcon project blog
Phalcon DevTools (1.3.3)
Success: Controller "index" was successfully created.
Success: Project 'blog' was successfully created.
$ ls -a blog/
. .. app .htaccess index.html .phalcon public
更改权限为你的 Web Server 用户,如 www:
$ chown -R www:www blog/
此处我用了 $ chmod -R 777 blog/ //这样省略了不少麻烦,不然会遇到很多读写权限报错的问题
如果你使用的 Apache,那恭喜你,你可以直接在地址栏访问 http://localhost/blog/
,将返回:
Congratulations!
You're now flying with Phalcon. Great things are about to happen!
如果你使用的 nginx,请点击这里 Niginx 下配置 Phalcon。直接复制过来,单独配置一个域名, 连 blog 这一层都不用出现在 url 里边了。
其实 phalcon project project-name
后可以加类型 micro/simple/modules/cli 默认是 simple
, 针对不同的项目类型,生成相应的框架结构。是不是很强大!
创建 Controller / Model / 更多
首先我们到 当前项目目录
下:
$ cd blog/
创建一个 TestController,可以在命令行下,输入:
$ phalcon controller test
app/controllers/
目录下会自动生成 TestController.php 文件,和基本的文件内容:
<?php
class TestController extends \Phalcon\Mvc\Controller
{
public function indexAction()
{
}
}
创建一个 test 表的 Model,在命令行下,输入:
$ phalcon model test
app/models/
目录下会自动生成对应的 Test.php 的 ORM 文件,太过瘾了。
<?php
class Test extends \Phalcon\Mvc\Model
{
/**
*
* @var integer
*/
public $id;
/**
*
* @var string
*/
public $name;
}
当然你先要在 app/config/config.php
文件中配置 database
信息,以便创建 model 时可以连接上数据库。
创建所有表的 Model,在命令行下,输入:
$ phalcon all-models
app/models/
目录下一堆 ORM 文件出现了:
Category.php
Comment.php
EntryCategory.php
Entry.php
EntryTag.php
Region.php
Search.php
Test.php
创建 test 表的脚手架,在命令行下,输入:
$ phalcon scaffold --table-name test
你会发现这几个文件产生了:
app/controllers/TestController.php
app/views/layouts/test.phtml
app/views/test/index.phtml
app/views/test/search.phtml
app/views/test/new.phtml
app/views/test/edit.phtml
现在可以在地址栏访问http://localhost/blog/test/new
,http://localhost/blog/test/edit/[id]
,http://localhost/blog/test/search
,创建,编辑和搜索记录了。是不是感觉失去的时间找回来了!
好了,先这样吧。
更多更详尽的参数信息可以通过以下命令格式获取:
$ phalcon [project/controller/model/...] help
或查看此页面 获取可用的命令。
等不急用 PhalconPHP 框架来做一个项目的话,就 先来跑一个 PhalconPHP 框架的 MVC 实例 吧。
phalcon 启用 webtools
我们可以在生成项目时,使用 --enable-webtools
参数,生成 WEB 管理界面。
phalcon create-project [project-name] --enable-webtools
转:http://blog.aboutc.net/php/48/build-phalconphp-framework-development-environment