How to filter multidimensional key value array by value in PHP

2 Answers

0 votes
$arr = array(
    array('language'=>'JavaScript', 'code'=>1298),
    array('language'=>'PHP', 'code'=>9814),
    array('language'=>'Java', 'code'=>5621)
);
 
$like = 'ja';
 
$result_arr = array_filter($arr, function($item) use($like) {
    if (stripos($item['language'], $like) !== false) {
        return true;
    }
    return false;
});
 
 
echo "<pre>";
print_r($result_arr);
echo "</pre>";
 
 
 
 
/*
run:
         
Array
(
    [0] => Array
        (
            [language] => JavaScript
            [code] => 1298
        )

    [2] => Array
        (
            [language] => Java
            [code] => 5621
        )

)
       
*/

 



answered Sep 21, 2019 by avibootz
0 votes
$arr = array(
    array('language'=>'JavaScript', 'code'=>1298),
    array('language'=>'PHP', 'code'=>9814),
    array('language'=>'Java', 'code'=>5621),
    array('language'=>'PHP', 'code'=>1111),
);
 
$result_arr = array_filter($arr, function($var) {
    return ($var['language'] == 'PHP');
});
 
 
echo "<pre>";
print_r($result_arr);
echo "</pre>";
 
 
 
 
/*
run:
         
Array
(
    [1] => Array
        (
            [language] => PHP
            [code] => 9814
        )

    [3] => Array
        (
            [language] => PHP
            [code] => 1111
        )

)
       
*/

 



answered Sep 21, 2019 by avibootz
...