首页 | PHP资讯 | 技术专栏 | 资源共享 | PHP培训 | PHP职场 | 图书 | PHP ON WIN | PHP圈子
返回列表 回复 发帖

[其他] Yhmphp MVC 框架

[其他] Yhmphp MVC 框架

本帖最后由 七月十五 于 2009-5-16 13:07 编辑

下载:



目前这个框架用来开发公司的游戏平台.公司的是MSSQL和MYSQL 切换的.所以我自己整合了ADODB进去做我的   SQL低层

把我原来那个操作数据库类去掉了. 代码怎么垃圾都不会是瓶颈,数据库才是瓶颈


我这个  MVC   主要是方便  PHP的开发  这样我不用再加班了.


本来说要集成很多功能.我天天都在集成.后来才发现我想要的是简单.而不是象fleaphp 和 zf那样的强大的MVC


包含实例的太大了.所以只给了核心库和使用文档
想要实例的.    QQ我吧.我发给你

因为这个MVC是一两天写好的东西.所以有失败的地方请告诉我.让我好学习.谢谢


[php]数据库常用操作方法介绍:

                        
例子:        $total = $this->mysql->getOne('SELECT * FROM '.TABLEPRE.'book');

解释:  $this->mysql->getOne  方法是获取记录的行数。也就是一共有多少条记录


例子          $this->mysql->getAll("SELECT * FROM ".TABLEPRE."book LIMIT $start,$end");

解释:  $this->mysql->getAll   方法是查询数据库返回二维数组,方便给smarty 循环调用


例子        $this->mysql->update("UPDATE ".TABLEPRE."book SET name = '$personame', sex='$personsex', job='$personjob', content='$personcontent' WHERE id=".$personid);

解释:        $this->mysql->update        方法是更新数据库记录


例子        $this->mysql->delete('DELETE FROM '.TABLEPRE.'book WHERE id='.$did);        

解释:         $this->mysql->delete   方法是删除数据库信息

例子        $this->mysql->insert("INSERT INTO ".TABLEPRE."book(name,sex,job) VALUES('$name','$sex','$job')");

解释:         $this->mysql->insert        方法是插入数据库方法



Yhmphp 整体架构思路:


index.php前台入口文件   --     
modles模型/业务逻辑层的操作  --   
controllers控制器/控制层的操作 ----views/显示层
主要文件记述:

Yhm / config   :   db.config.php    数据库配置文件

Yhm / funchouse  : common.func.php  全局函数文件(这个文件已经自动加栽,里面的函数直接可以使用)

Yhm / funchouse : info.func.php  这个是外部函数(需要的要自己加栽)



目录结构说明:

Application  目录  下的

Controllers  :  控制器文件  默认有(index.php 和admin.php)

Models        :          模型文件     默认模型文件是(index.php)

Views                :    视图层                  默认视图是  (index.php)

Lang                :    语言包














程序范例:
第一步:  index.php 入口文件

第二步: 路由到模型

<?php
class personadd_model extends Route{
/**
给模板的数值
*/
        var $smarty='';        
        var $rege;
        var $page;
        
               
        function model() {
/**
加载预定义的全局实例
*/               
                $this->rege = Route :: loadClass('yhm_route_regclass');

/**
逻辑层
*/
//                include regclass('page');
//                $this->page = new page(array('total'=>1000,'perpage'=>20));
                $name = $_POST['personame'];
                $sex = $_POST['personsex'];
                $job = $_POST['personjob'];
                $this->mysql->insert("INSERT INTO ".TABLEPRE."book(name,sex,job) VALUES('$name','$sex','$job')");
                $this->control('index','personadd');  寻找控制器

        }
}        
?>




第三步:路由到控制器

<?php
class index_control extends View{
                                
        function index() {
                $this->myassign('authimg','index.php?m=authimg'); //调用验证码
                $this->myview('index.tpl');
        }

        function personadd() {
                goto('index.php?m=personshow');  寻找视图
        }



第四步:  路由到视图

Smarty 模板文件


工具使用:


第一:调用验证码
                $this->myassign('authimg','index.php?m=authimg'); //调用验证码




第二: 使用FCK 编辑器
        $this->myassign('fck',$this->myfck('fckvalue',$this->smarty[0][0]['job']));



第三:用户注册函数的使用
!注册登录状态
                        login(array('user'=>$user,'pwd'=>$pwd));
                        goto('index.php?m=personshow');

!检测是否登录
                if(!islogin(array('user','pwd'))) {
                        goto('index.php?m=WRONG') ;

!注销用户
loginout (array('user','pwd'))

第四: 封装好的include函数。
统一路径
!加栽类
Include regClass() ;

!加栽函数
Include regFunc();
[/php]
附件: 您需要登录才可以下载或查看附件。没有帐号?注册
我心因何恼春风

快点发布啊,我想用一上:Q

TOP

顶起:lol

TOP

哈哈...小雪.不错..努力,

TOP

这么猛。。。一个月以前你还说要在DZ辞职到广东工作 现在都自己开发框架了。。。:L

TOP

:lol 我一看到ADODB就不想用了。
产品/质量/产量

TOP

不错
设计模式学习中

TOP

不是吧,这么多人搞框架
[url=http://www.mayday.net.cn]五月天[/url]

TOP

因为你用MVC开发一个项目以后.你会爱上她:lol :lol

一个是开发的效率一个是代码的可维护性
我心因何恼春风

TOP

我想要多点例子阿    我QQ:184890965  可以加我之后给我点例子吗?  多谢

TOP

返回列表