6-9ThinkPHP5模型的创建与使用:实例化与静态创建

6-9ThinkPHP5模型的创建与使用:实例化与静态创建

冬韦皮鹊京该检碾喝洁馅千授

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第1张

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第2张

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第3张

1.为数据表staff创建模型类Satff.php

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第4张

<?php
namespace app\index\model;
use think\Model;//引入Model类
class Staff extends Model
{
    //此时,模型创建成功
}

使用命令行创建模型的命令

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第5张


staff数据表信息:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第6张

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第7张

1.实例化调用

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //1.实例化创建模型对象
        $staff=new Staff();
        $result=$staff->where('id=4')->find();
        dump($result);
    }
}

执行,可以看到返回的是对象

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第8张

只获取原始数据

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //1.实例化创建模型对象
        $staff=new Staff();
        $result=$staff->where('id=4')->find();
        dump($result->getData());//只获取原始数据
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第9张

getData(‘name’):只查看name信息

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //1.实例化创建模型对象
        $staff=new Staff();
        $result=$staff->where('id=4')->find();
        dump($result->getData('name'));//只获取原始数据中的name信息
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第10张


2.静态创建模型对象

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //2.静态创建模型对象
        dump(Staff::get(4));//直接根据主键查询信息
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第11张

使用getData()获取原始数据

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //2.静态创建模型对象
        dump(Staff::get(4)->getData());//直接根据主键查询信息
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第12张

查看部门信息

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //2.静态创建模型对象
        dump(Staff::get(4)->getData('dept'));//直接根据主键查询信息
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第13张


6-9ThinkPHP5模型的创建与使用:实例化与静态创建第14张

1.外部访问:

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //2.静态创建模型对象
        $staff=Staff::get(4)->getData('dept');//直接根据主键查询信息
        dump($staff);
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第15张

2.内部访问

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第16张

<?php
namespace app\index\model;
use think\Model;//引入Model类
class Staff extends Model
{
    public function test()
    {
        //返回员工所属的部门信息
        return $this->getData('dept');
    }
}

D:\phpStudy\PHPTutorial\WWW\tp5\application\index\controller\Index.php:

<?php
namespace app\index\controller;
use app\index\model\Staff;
class Index
{
    public function index()
    {
        //2.静态创建模型对象
        $staff=Staff::get(4)->test();//直接根据主键查询信息
        dump($staff);
    }
}

执行:

6-9ThinkPHP5模型的创建与使用:实例化与静态创建第17张


倾陇喜溃誓梨趁娥币袍虚燃纳