MayFish PHP的MVC架构的开发框架
2018-09-07 22:12
框架工作流程:
加载框架文件》加载参数设置对象》进行初始化设置》加载项目设置参数》获取控制器及控制器方法》执行控制器事件
使用实例为:
复制代码 代码如下:
<?php
class DefaultController extends AppController
{
protected $components = array(smarty);
/** 默认事件(方法) */
public function index()
{
$db_test = M(members); //加载并实例化一个模型
/** 添加数据 */
$data = array(
title => 写入测试,
body => 写入的内容,
);
$result = $db_test->create($data);
if(FALSE != $result)
{
dump(<p><strong>exampel 1:</strong><br />数据写入成功!</p>);
}
/** 添加多条数据 */
dump(<p><strong>exampel 2:</strong><br />);
$data = array(
array(title=>数据1, body=>内容1),
array(title=>数据2, body=>内容2),
array(title=>数据3, body=>内容3),
array(title=>数据4, body=>内容4),
array(title=>数据5, body=>内容5),
);
foreach($data as $item)
{
$result = $db_test->create($item);
if(FALSE != $result)
{
dump(数据<strong>.$item[title].</strong>写入成功!<br />);
}
}
dump(</p>);
/** 更新数据 */
$data = array(title=>修改数据标题, body=>修改数据内容);
$result = $db_test->where(array(id=>3))->update($data);
if(FALSE != $result)
{
dump(<p><strong>exampel 3:</strong><br />数据更新成功!</p>);
}
/** 删除数据 */
$result = $db_test->where(id=5)->remove();
if(FALSE != $result)
{
dump(<p><strong>exampel 3:</strong><br />数据删除成功!</p>);
}
/** 执行数据查询,使用连贯的操作符 */
$db_test->where(array(id=>12, action=>1))
->order(`id` DESC)
->fields(id,name,action)
->findAll();
$this->shownav();
}
//图片处理事件
public function image()
{
$file = Configure::read(app_path)./yagas/K750c_small_06.jpg;
$im = M(SYS, image); //加载并实例化一个系统模型
$im->th_width = 200;
$im->th_height = 150;
$im->thumb($file, null, false);
}
/** 另一个控制器事件 */
public function admin()
{
dump($this);
$this->shownav();
}
/** 另一个控制器事件 */
public function info()
{
$this->shownav();
phpinfo();
}
/** 这是一个内部事件,无法从浏览器地址进行访问 */
private function shownav()
{
echo <a href=/>访问默认事件</a> <a href=?a=admin>访问事件 admin</a> <a href=?a=info>访问事件 info</a>;
}
}
?>
单个空间多个站点的实现
复制代码 代码如下:
<?php
header(Content-type:text/html; charset=utf-8);
include_once(./MayFish/init.php); //加载MFS框架
$domain = $_SERVER[HTTP_HOST];
switch($domain) {
Configure::write(app_name, app);
Configure::write(app_path, dirname(__FILE__)./app);
break;
case
Configure::write(app_name, aike8);
Configure::write(app_path, dirname(__FILE__)./aike8);
break;
}
$app = new application();
$app->run();
?>
下载地址//