thinkphp8初识模型--php进阶篇

        thinkphp8连接操作数据库其中一种方式是通过模型,大可不必先了解数据库再了解模型,数据库方面了解下连接方式,直接了解模型即可。数据库选择mysql5.7.

        在phpstudy中安装好mysql5.7,在php中开启php_pdo_mysql扩展

        下载SQLyog,这是专门为mysql提供图形操作界面的软件,此为收费软件,弄个注册码,然后用SQLyog连接mysql5.7。查询mysql5.7的初始密码以供SQLyog来连接

        创建tp8_multi_auto数据库

        右键圈中的地方,选择创建数据库,然后创建am8_user数据表

        注意圈中的地方显示的是tp8_multi_auto数据库,然后在箭头所指空白大方框输入如下语句

CREATE TABLE `am8_user` (
  `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
  `name` varchar(50) DEFAULT NULL,
  `email` varchar(100) DEFAULT NULL,
  `status` int(10) DEFAULT NULL,
  `score` float(5,2) DEFAULT NULL,
  `create_time` datetime DEFAULT NULL,
  `update_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=7 DEFAULT CHARSET=utf8

        将thinkphp8根目录下的.example.env文件改为.env文件,修改配置连接mysql5.7数据库

APP_DEBUG = true

DB_TYPE = mysql
DB_HOST = 127.0.0.1
DB_NAME = tp8_multi_auto
DB_USER = root
DB_PASS = root
DB_PORT = 3306
DB_CHARSET = utf8
DB_PREFIX = am8_

DEFAULT_LANG = zh-cn

        按照上面示例修改好配置后,项目是基于自动多应用模式的,在mp_toutiao应用下新建model文件夹,在model文件夹下面新建User.php。由于User模型会自动查询数据表来初始化。因此可以通过生成缓存来避免自动查询数据表,下面用输入命令来生成缓存

        打开命令行,切换到项目根目录下面,输入php think optimize:schema mp_toutiao

        切到runtime目录下面可以看到生成cache文件夹,下面还有对应的缓存文件。注意修改数据表结构是需要手动重新更新缓存,缓存文件不会自动更新

        在控制器Index.php文件中新增testDb方法如下,先新增一条数据

use app\mp_toutiao\model\User;

class Index {

        public function testDb()
        {
                $user           = new User;
                $user->name     = 'thinkphp';
                $user->email    = 'thinkphp@qq.com';
                $user->save();

        }

}

        在浏览器运行http://mp.toutiao.am8.com/index/testDb后,在SQLyog查看新增的数据

        修改一下方法,把新增的数据拿出来显示

public function testDb()
{
        $user = User::find(1);
        echo $user->create_time;  
        echo $user->name;

}

          在浏览器运行http://mp.toutiao.am8.com/index/testDb后

        再新增一条数据,如下代码

public function testDb()
{

        $user = new User();
        $user->name = 'thinkphp';
        $user->score = 100;
        $user->save();

}

        在浏览器运行http://mp.toutiao.am8.com/index/testDb

        然后修改这条数据,代码如下

public function testDb()
{

        $user = User::find(2);
        $user->name     = 'thinkphp';
        $user->email    = 'thinkphp@qq.com';
        $user->save();

}

        在浏览器运行http://mp.toutiao.am8.com/index/testDb,在SQLyog查看修改后的数据

        最后删除掉第1条数据,代码如下

public function testDb()
{

        $user = User::find(6);
        $user->delete();

}

        在浏览器运行http://mp.toutiao.am8.com/index/testDb,自己去SQLyog查看效果,就不展示了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值