Array_filter对象上下文中,使用私有回调

2022-08-30 21:31:46

我想使用array_filter函数过滤数组。它暗示在水下使用call_user_func,但没有提到任何关于如何在类/对象的上下文中使用的内容。

一些伪代码来解释我的目标:

class RelatedSearchBlock {
  //...
  private function get_filtered_docs() {
    return array_filter($this->get_docs(), 'filter_item');
  }

  private filter_item() {
    return ($doc->somevalue == 123)
  }
}

我需要换成吗?我想要的可能吗?'filter_item'array($this, 'filter_item')


答案 1

是的:

return array_filter($this->get_docs(), array($this, 'filter_item'));

请参阅回调类型的文档


答案 2

推荐