从PHP中的多个数组获取相同键的值 [英] Get values of same key from multiple array in php

查看:821
本文介绍了从PHP中的多个数组获取相同键的值的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我试图从多个数组中分离出一个数组中的"TID",但是我找不到有效的解决方案.

I'm trying to separate the "TID" in an array from these multiple arrays but I couldn't find the efficient solution.

我在一个变量中具有以下类型的数组:

I've the following type of arrays in one variable:

Array
(
    [0] => Array
        (
            [tid] => 168
        )

)
Array
(
    [0] => Array
        (
            [target_id] => 14
        )

    [1] => Array
        (
            [target_id] => 15
        )

    [2] => Array
        (
            [target_id] => 37
        )

)
Array
(
)
Array
(
    [0] => Array
        (
            [target_id] => 36
        )

)
Array
(
    [0] => Array
        (
            [target_id] => 14
        )

    [1] => Array
        (
            [target_id] => 15
        )

)
Array
(
    [0] => Array
        (
            [target_id] => 36
        )

)
Array
(
    [0] => Array
        (
            [tid] => 168
        )

    [1] => Array
        (
            [tid] => 167
        )

)

这些值在一个变量中,并且可以有无限个数组.

These values are in one variable and there can be unlimited arrays.

预期输出:

Array
(
    [0] => Array
        (
            [tid] => 168
        )
    [1] => Array
        (
            [tid] => 168
        )

    [2] => Array
        (
            [tid] => 167
        )

)

推荐答案

您正在搜索这是语法

array array_column ( array $input , mixed $column_key [, mixed $index_key = null ] )

说明

array_column — Return the values from a single column in the input array

示例:

$records = array(
    array(
       tid => 167
    ),
    array(
        'id' => 3245,
        'first_name' => 'Sally',
         tid => 166
    ),
    array(
        'id' => 5342,
        'first_name' => 'Jane',
         tid => 168
    ),
    array(
        'id' => 5623,
        'first_name' => 'Peter',
         tid => 169
    )
);

$ids= array_column($records, 'tid');

输出:

Array
(
    [0] => 167
    [1] => 166
    [2] => 168
    [3] => 169
)

如果您有更多的数组,

$records1 = [ ['tid' => 169]];
$ids1 = array_column($records1, 'tid');

然后您可以 array_merge .

$ids = array_merge($ids, $ids1);

输出:

Array
(
    [0] => 167
    [1] => 166
    [2] => 168
    [3] => 169
    [4] => 169
)

这篇关于从PHP中的多个数组获取相同键的值的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆