分析一个ThinkPHP联表查询案例

2020-08-21 09:27:02

分析一个ThinkPHP联表查询案例

今天给大家介绍的是,thinkPHP联表查询案例。这里涉及到两个表,一张是设备表doorcontroller和管理员表weixin。设备表中weixin_id设置为管理表中的外键,其中主表外键字段weixin_id对应从表主键字段id。

(推荐教程:thinkphp教程)

1.png

设备表

2.png

管理员表

除此之外,我们在开发的过程中还需要引用RelationModel.class.php文件,该文件位于ThinkPHPLibraryThinkModelRelationModel.class.php,正式开发如下:

<?phpnamespace AdminModel;use ThinkModelRelationModel;class DoorcontrollerModel extends RelationModel{    protected $_link = array(        'Weixin'=>array(            'mapping_type'      => self::HAS_ONE,                'foreign_key'=>"id",//主表的外键对应的从表主键字段                'mapping_key'=>'weixin_id',//主表设置的外键                'as_fields' => 'nickname',                ),        );}

这样die(var_dump($arr))的结果就会在原来数据的基础上加上一个nickname字段,这便实现了主从表关联查询了,通过只查询doorcontroller表同时也查询了它的从表weixin管理员的昵称。