继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

SWOOLE 从入门到放弃之写个小框架(十九)

Pizzaaa
关注TA
已关注
手记 23
粉丝 77
获赞 47

小伙伴们非常抱歉,这两天生病身体不舒服就没更新。

Model.php 的主要功能是连接数据库,为增删改查数据等操作功能提供统一的操作接口。而它还需依赖数据库实现类,为了兼容PDO、MYSQLI,在Model.php和数据库实现类中间需有一个数据库工厂类来连接。为了节省时间,我直接把PHPCMS的模型类、数据工厂类和PDO实现类扒了过来。当然了,小伙伴们也可以根据自己的需求整合自己熟悉的ORM。

frame/Lib/Model.php 代码 https://gitee.com/pizzzz/piz/blob/master/frame/Lib/Model.php

frame/Lib/DbFactory.php 代码 https://gitee.com/pizzzz/piz/blob/master/frame/Lib/DbFactory.php

frame/Lib/Db/Pdo.php 代码 https://gitee.com/pizzzz/piz/blob/master/frame/Lib/Db/Pdo.php

创建config/database.php

<?php
/**
 * 数据库配置
 */
return [
    'default' => [
        'hostname' => 'localhost',      //服务器地址
        'port' => 3306,                 //数据库连接端口
        'database' => 'test',           // 数据库名
        'username' => 'root',           // 数据库用户名
        'password' => 'root',           // 数据库密码
        'charset' => 'utf8',            // 数据库编码默认采用utf8
        'debug' => true,                // 调试模式
        'pconnect' => true,             // 长连接
    ],
];

创建app/model/User.php

<?php
namespace app\model;
class User extends \Piz\Model
{
    public $table_name = 'USER';

    public function get_by_username($username){
        return $this->get_one ("`USERNAME`='{$username}'");
    }
}

修改app/modules/index/index.php

<?php
namespace app\modules\index;
class index extends \Piz\Controller
{
    public function init(){
        $user = new \app\model\User();
        $ret = $user->get_by_username ('ADMIN');
        var_dump ($ret);

        echo  date('Y-m-d h:I:s'),'<br/>';
        echo __CLASS__;
    }
}

启动运行看效果。。我就不戴图了

代码已经上传到码云 https://gitee.com/pizzzz/piz.git

打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP