Yii框架 连表查询操作示例

本文讲述了Yii框架连表查询操作。分享给大家供大家参考,具体如下:

Join

//表连接
//查询出学生、班级、校区、记录表的所有数据
$data=Jf_record::find()
  ->join('join','jf_stu','jf_record.sid=jf_stu.sid')
  ->join('join','jf_class','jf_stu.cid=jf_class.cid')
  ->join('join','jf_school','jf_class.xid=jf_school.xid')
  ->select('*')
  ->where(['jf_record.re_id'=>$re_id])
  ->asArray()
  ->one();
  echo $data['sname'].'<br>';
  echo $data['sex'].'<br>';
  echo $data['rtime'].'<br>';
  echo $data['cname'].'<br>';
  echo $data['school'].'<br>';

Has

hasOne方法,因为文章对于文章状态来说,是多对一 一对一的关系;

hasMany方法,因为文章对于文章评论来说,是一对多的关系;

例子

模型

//获取部门名字 用于view页面
public function getDept()
{
return $this->hasOne(Dept::className(), ['dept_id' => 'dept_id']);
}

视图

['attribute'=>'dept_id',
  'label'=>'部门',
  'value'=>'dept.dept_name',
],

显示

更多关于Yii相关内容感兴趣的读者可查看本站专题:《Yii框架入门及常用技巧总结》、《php优秀开发框架总结》、《smarty模板入门基础教程》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》

希望本文所述对大家基于Yii框架的PHP程序设计有所帮助。

有时候我们在开发中会遇到这样一种情况,例如:显示手机号我们需要将中间4位遮挡掉,一般使用“*”号代替,或是显示身份证号码是为了保护个人信息也同样需要遮挡掉4位,故可用到下列方式、代码进行实 ...