加入收藏 | 设为首页 | 会员中心 | 我要投稿 航空爱好网 (https://www.dakongjun.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

从views_php过滤器返回TRUE不能按预期工作

发布时间:2022-10-26 15:06:49 所属栏目:PHP教程 来源:
导读:  我在View中编写了一个全局PHP过滤器,我希望当a时返回的值为TRUE 满足条件,当 TRUE 时,它应该从我的结果集中消除该行。 视图在表格中显示其结果。

  我的过滤器代码如下

  global $ user; $ uid =
  我在View中编写了一个全局PHP过滤器,我希望当a时返回的值为TRUE 满足条件,当 TRUE 时,它应该从我的结果集中消除该行。 视图在表格中显示其结果。
 
  我的过滤器代码如下
 
  global $ user; $ uid = $ user-> uid; $ bid = db_query(“SELECT entity_id FROM {field_data_field_bid_request_reference} WHERE field_bid_request_reference_line_item_id ='$ row-> line_item_id'”); foreach($ bid as $ value){ $ node_uid = db_query(“SELECT uid FROM {node} WHERE nid ='$ value-> entity_id'”) - > fetchField(); if($ node_uid!= $ uid){ return TRUE; } }
 
  我得到的结果是我期望的if语句。 $ node_uid 正在返回我想要的,uidPHP过滤器,无论谁用 nid =创建节点到 entity_id 从 db_query 获得。
 
  在我的测试中,我有12行,每行包含 line_item_id 。 $ node_uid 有6种可能的结果,如果我使用 drupal_set_message 来查看foreach中的4 node_id ,我会看到它们。 在我的测试用例中,我有一个5的uid,这应该匹配3次。 在我的最终结果中我只能看到3行。
 
  问题是9行应该被删除,因为它们匹配if语句并且应该返回 TRUE 实际上是显示的行和3应该失败的if语句测试,应该显示的是从输出中删除的行。 这几乎就像返回值被反转一样。
 
  我做什么就好像if语句通过时返回值不正确。< p>我原本期望 node_id 不等于 uid 的情况返回 TRUE ,这些行不会出现在我的表中。
 
  任何人都可以提供有关可能出错的建议以及如何调试此过滤器吗?
 

(编辑:航空爱好网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!