简体   繁体   English

如何在数组中获取数组?

[英]How to fetch array within array?

my array is coming like this我的阵列是这样来的

 Array
    (
        [mes_id] => 1852
        [frm_id] => 376
        [network] => Array
            (
                [0] => Array
                    (
                        [alerttitle] => enter_nv
                        [alertImageUrl] => photos/952a7253eda21b936489d0f7b35f953bth.jpeg
                        [alertDescription] => (1) Network Invitation(s)
                        [alertType] => Network
                        [count] => 1
                        [id] => 376
                    )

            )
[msg] => Array
        (
            [0] => Array
                (
                    [alerttitle] => Raven Lexy
                    [alertImageUrl] => photos/81951b37ad01c4aa65662956f178214eth.jpeg
                    [alertDescription] => (1) New Message(s)
                    [alertType] => New Message
                    [count] => 1
                    [id] => 51
                )

            [1] => Array
                (
                    [alerttitle] => Raven Lexy
                    [alertImageUrl] => photos/81951b37ad01c4aa65662956f178214eth.jpeg
                    [alertDescription] => (1) New Message(s)
                    [alertType] => New Message
                    [count] => 1
                    [id] => 51
                )

        )

    )

how can i fetch alerttitle from each array?如何从每个数组中获取 alerttitle?

please help, thanks.请帮忙,谢谢。

After your update更新后

$titles = array();
$titles[] = $array['network'][0]['alerttitle'];

foreach ($array['msg'] as $item) {
  $titles[] = ['alerttitle'];
}

print_r($titles);
$array['network'][0]['alerttitle'];

or或者

for ($i=0; $i < count($array['network']); $i++) { 
  echo $array['network'][$i]['alerttitle'];
}

if there is more than one如果有多个

to your changed example:到您更改的示例:

$array = array(
'foobar' => array(
    'foo' => 'afoasfd',
    'alerttitle' => 'fasfdasf'
  ), 
  'alerttitle' => 'foobar'
);

$output = array();

array_walk_recursive($array, 'foo', &$output);
function foo($val, $key, $obj){
  if($key == 'alerttitle') array_push($obj, $val);
}
print_r($output);

If that's $a,如果那是$a,

$alertTitle = $a['network'][0]['alerttitle'];

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM