热搜:NVER node 开发 php

求教关于brophp框架中r_select()的用法

2024-09-05 09:50:02
求教关于brophp框架中r_select()的用法

  新人求教一个关于brophp框架r_select()的用法,今天在使用这个函数时候感到困惑,源代码如下:



            $order=D("user");


            $orderList=$order->field("uid")->where(array("uid"=>"8")->r_select(array('web_order','w_orderid,w_orderTime,w_workid,w_finishTime,state','uid'));


            p($orderList);


如上所示,我建有user和web_order两个表,uid为user表的主键,为web_order表的外键,对于user表可以用where()来限制,但如何对从表web_order的字段state进行限制呢,求教各位phper,无限感激。
想要得到 uid=‘8’&&state=“未维修”。


回复讨论(解决方案)

brophp 的 ORG 是很差的,在设计时并没有考虑你这样的需求
同时规则太多,参数形式也不统一

你可以给 where 方法的参数数组的关联键附加表名来解决
->where(array("uid"=>"8",  'web_order.state' => 'val'))
可通过 sql 方法看看 SQL 指令是否正确

brophp 的 ORG 是很差的,在设计时并没有考虑你这样的需求
同时规则太多,参数形式也不统一

你可以给 where 方法的参数数组的关联键附加表名来解决
->where(array("uid"=>"8", 'web_order.state' => 'val'))
可通过 sql 方法看看 SQL 指令是否正确


尝试过您提供的方法,发现sql语句 select [字段名] from user where uid=8 and web_order.state=[val] 。from 后面只有user表名,sql语句错误,看来只有直接写sql语句解决了T_T
非常感谢斑竹大大的回答。