I-Framework
I-Framework是基于PHP5面向对象的MVC开发框架
请注意:本项目的官方网站已移至:http://ifphp.cn
我们的目标是:Free,Easy,Fast
下载最新版本 欢迎有时间、精力和热情的朋友加入我们,请联系: iwind.liu@gmail.com
资源
| 官方网站 | http://ifphp.cn |
| API | http://ifphp.cn/doc/api |
| 快速入门 | http://ifphp.cn/document/p/quick-guide |
| 用户手册 | http://ifphp.cn/document/p/guide |
| 讨论社区 | http://ifphp.cn/bbs/ |
| 应用展示 | http://ifphp.cn/sites |
主要特征
高性能
- 使用类编译技术使应用不用加速器也能运行的飞快
- 缓存配置文件,再多的配置文件也不会影响性能
- 内置File和APC缓存,可以很方便地缓存数据
- I-F设计的第一个目标就是模块化
- 开发、引入第三方库或基于I-F的模块非常容易
- 每个模块可能很方便地管理自己的配置
- 用户可以随意加载或取消加载某个模块
- 控制器支持ActionFilter,使得写控制器插件相当容易
- I-F总能精确定位到错误的位置
- 支持运行环境配置,可随时在开发环境和产品环境下切换
- 可记录日志、错误信息、异常信息到文件,方便事后查询
- 我们会一直根据实践经验对框架进行更新
- 更多的模块将被会被提供
示例
model
/**
* TLog
*/
class TLog extends IDbRecord {
static $_table = "tbl_log";
}view
<html>
<head>
<meta http-equiv="content-type" content="text/html;charset=utf-8">
<title>阅读博客</title>
</head>
<body>
<table>
<tr>
<td>标题:</td>
<td>{{$log.title}}</td>
</tr>
<tr>
<td valign="top">内容</td>
<td>{{$log.content|nl2br}}</td>
</tr>
</table>
</body>
</html>controller http://localhost/index/read/1 对应 doRead方法
<?php
class IndexController extends IController {
function _init() {
}
/**
* 读取日志
*
*/
function doRead() {
$this->log = q("TLog")->findx();
}
/**
* 添加日志
*
*/
function doAdd() {
$log = new TLog();
$log->save(array(
"content" => x("content"),
"category_id" => x("category_id"),
"submit_date" => date("Y-m-d H:i:s")
));;
echo "add ok";
}
/**
* 删除日志
*
*/
function doDelete() {
$log = q("TLog")->findx();
$log->delete();
echo "delete ok";
}
/**
* 修改日志
*
*/
function doModify() {
$this->log = q("TLog")->findx();
//如果是post方法
if ($this->request()->isPost()) {
$this->log->save(array(
"content" => x("content"),
"category_id" => x("category_id")
));
echo "modify ok";
}
}
}