MayFish PHP的MVC架构的开发框架

yipeiwu_com6年前PHP代码库
框架工作流程:
加载框架文件》加载参数设置对象》进行初始化设置》加载项目设置参数》获取控制器及控制器方法》执行控制器事件

使用实例为:
复制代码 代码如下:

<?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) {
case 's1.xinxi169.com.cn':
Configure::write('app_name', 'app');
Configure::write('app_path', dirname(__FILE__).'/app');
break;



case 'www.aike8.cn':
case 'aike8.cn':
Configure::write('app_name', 'aike8');
Configure::write('app_path', dirname(__FILE__).'/aike8');
break;
}


$app = new application();
$app->run();
?>

下载地址 https://www.jb51.net/codes/20169.html

相关文章

PHP中去掉字符串首尾空格的方法

第一种方法:通过php自带的函数 <?php /* trim 去除一个字符串两端空格, rtrim 是去除一个字符串右部空格, ltrim 是去除一个字符串左部空格。 */ ?&g...

php返回字符串中所有单词的方法

本文实例讲述了php返回字符串中所有单词的方法。分享给大家供大家参考。具体分析如下: 这段代码返回字符串中的所有单词,当$distinct=true时去除重复元素。代码如下: &...

PHP实现的随机红包算法示例

PHP实现的随机红包算法示例

本文实例讲述了PHP实现的随机红包算法。分享给大家供大家参考,具体如下: 一、整体设计 算法有很多种, 可以自行选择, 主要的"架构" 是这样的, 用redis decr()命令去限流,...

ADODB结合SMARTY使用~超级强

Smarty实例教学实例篇(三、使用ADODB连接数据库) 前两个月因为工作上的原因一直很忙,所以没有及时完成这个教程,正好今天周六不用加班,抽个空完成它吧! 在开始新的的教程...

PHP中调用C/C++制作的动态链接库的教程

一般而言,php速度已经比较快,但是,对于一些较高级开发者而言,如果想要追求更快的速度,那毫无疑问可以通过自己写c代码,并编译为动态链接库(常为.so文件),然后php通过创建一个新的扩...