重点推荐:wp_list_pluck

Published
2023-01-04
浏览次数 :  11

wp_list_pluck( array $list, int|string $field, int|string $index_key = null ): array

Plucks a certain field out of each object or array in an array.

从数组中的每个对象或数组中提取特定字段。

如果你只需要从复杂数组对象里获取一个简单的数据来生成新的数组,就用wp_list_pluck

比方说你有一个默认的对象数组,你要获取到对象里面的title, 并且重新生成一个数组, 一般性我们常规就是用到foreach

首先我们初始化要获取的默认数组: $item = [] ;

然后通过 $item[] 进行 array push

foreach ($posts as $post) {

//$post 是文章的object

$item[] = $post->title;

}

然后我们打印$item . $item就是我们所有文章的标题的新数组。

如果要用到复杂数组的过滤,就要用到array_map和array_filter

$item = [];

foreach($posts as $post) {
  $item[] = [
    //array 里面push array 
    'post' => $post->post_title,
    'content' => $post->post_content,
    'fields'  => 'true'
  ];
}
echo '<pre>';

var_dump($item);

echo '</pre>';

$post_content = wp_list_pluck($posts,'post_content');
var_dump($post_content);

//但是wp_list_pluck无法做判断的事情  如果要获取作者是Nash的文章的话, 可以用array_map 
//比方说下面获取作者为nash的帖子 

$map_array = array_map(function ($data) { 
  //$data从posts传递过来
  if('Nash' == $data->author) {
    return $data->title; 
  }
}, $posts); 

//用arrary filter 过滤掉 null的数据 

var_dump(array_filter($map_array));

  • 标签1
  • 标签1
  • 标签1
Top