Get values of same key from multiple array in php

10,041

Solution 1

You are searching for array_column.

Here is the syntax

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

Description

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

Example :

$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');

OUTPUT :

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

If you have more arrays,

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

then you can do array_merge.

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

OUTPUT :

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

Solution 2

$arr1= array("1"); // first 
$arr2 = array("2") // second array
$new = array();

foreach($arr1 as $key=>$value){
 if($key=="yourkey"){
   $new[]=$value;
 }
}

foreach($arr2 as $ke2=>$valu2){
   if($key2=="yourkey"){
     $new[]=$value2;
   }
 }

 print_r($new);
Share:
10,041
Arti Singh
Author by

Arti Singh

user3128761

Updated on June 04, 2022

Comments

  • Arti Singh
    Arti Singh almost 2 years

    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.

    And Expected Output:

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