千家信息网

如何实现ThinkPHP3.2中关联查询

发表于:2025-11-11 作者:千家信息网编辑
千家信息网最后更新 2025年11月11日,这篇文章主要介绍"如何实现ThinkPHP3.2中关联查询",在日常操作中,相信很多人在如何实现ThinkPHP3.2中关联查询问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家
千家信息网最后更新 2025年11月11日如何实现ThinkPHP3.2中关联查询

这篇文章主要介绍"如何实现ThinkPHP3.2中关联查询",在日常操作中,相信很多人在如何实现ThinkPHP3.2中关联查询问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"如何实现ThinkPHP3.2中关联查询"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

CREATE TABLE `test_avatar` ( `uid` int(11) unsigned NOT NULL DEFAULT '0', `avatar` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`uid`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;INSERT INTO `test_avatar` VALUES (1,'./Uploads/admin.jpg');CREATE TABLE `test_pro` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `uid` int(11) unsigned NOT NULL DEFAULT '0', `name` varchar(255) NOT NULL DEFAULT '', PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;INSERT INTO `test_pro` VALUES (1,1,'产品1'),(2,1,'产品2');CREATE TABLE `test_user` ( `id` int(11) unsigned NOT NULL AUTO_INCREMENT, `username` varchar(50) NOT NULL DEFAULT '', `tel` int(11) unsigned NOT NULL DEFAULT '0', PRIMARY KEY (`id`)) ENGINE=MyISAM DEFAULT CHARSET=utf8;INSERT INTO `test_user` VALUES (1,'admin',110);

如上三个表:用户头像表、产品表、用户表

怎样在模型中建立关联?

class ProModel extends RelationModel{ protected $_link=array( 'Avatar'=>array( 'mapping_type'=>self::HAS_ONE, 'class_name'=>'Avatar', 'foreign_key'=>'uid', 'mapping_fields'=>'avatar', 'as_fields'=>'avatar', ),  )}

试过用HAS_ONE、BELONGS_TO、HAS_MANY、MANY_TO_MANY都不行,求大神指点

------解决思路----------------------

Model下建立ProModelModel.class.php

class ProModelModel extends ViewModel {  public $viewFields = array(   'test_avatar'=>array( 'id',... ),   'test_pror'=>array( 'id',... '_on'=>'' ),      'test_pror'=>array( 'id',... '_on'=>'' ),  ); }

Thinkphp中SQL语句有关问题及解决办法

请问,在THINKPHP中,数据表里有个字段,字段的内容形式为 {1,2,3,4,5}

那么SQL语句里怎么将获得的ID值来跟字段里的内容来比较呢

------解决思路----------------------

用模糊查询吧

$where = array('该字段'=>array('LIKE', '%' . $ID . '%'));

到此,关于"如何实现ThinkPHP3.2中关联查询"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!

0