doushang2021 2016-08-13 08:04
浏览 119

在php中将多个关联数组值提取到单个数组中

I have an array like this

Array
(
    [0] => Array
        (
            [0] => Array
                (
                    [push_id] => APA91bGMnqfpYvJdUCx46eMDQZkLFRfd8jAlQs8q9MTh-HMIp4JrO461Lg0zYx0kFvvkFNRKyChicobdbAM9SLf_2Xyr0tWU1TxaZrfyVzbEE0wt4dAV5ikpBIsWoNkeIem0aqabU-lt
                )

            [1] => Array
                (
                    [push_id] => APA91bEQZUuflwJIH-cn8Up2cxf8x9m_v6igTFsRcRMXgp3j7GD1f9F4DGMrWYu1Uey_qVXaosnPKBwwzjomqf8uDSQ7Q9itFrYHDeg6OFzpC0w5ipL-o6QH_Ir-WXMMk5HqwHXbkGf3
                )

        )

    [1] => Array
        (
            [0] => Array
                (
                    [push_id] => APA91bHBVeJ5G36hp2qvHSOYp8P22peyIjieRDXRT8QDQS__0vyZYzEx7CB-x5RngP11VLvV_GSemmBpd9oc8WIiRQfnnXJURTSUEJprJekp7gkkZntR_YlbXAC6N4-nNlALzAylGMf7
                )

            [1] => Array
                (
                    [push_id] => APA91bFvQu61EsZodHHZ8Nb2xL7Dd_LLsLWRAHxkV3rhf3hP8gqLy1ekilYsNL-pIBnVgKj0OQCUySStnNvNizRP_Gid0Vk1p4hXnCz9n_n9MUCyn3_OlwtjC_RK9v611eep-gH7z-77
                )

        )

)

from this i want a new array that contains all push_id ,currently i am using two foreach loop to achive this but i don't think its a good way to this.

  • 写回答

3条回答 默认 最新

  • douwu8524 2016-08-13 08:11
    关注

    Try this:

    function formSingleArray($multiArray){
      $r = array();
      foreach($multiArray as $i => $a){
        if(gettype($a) === 'array' || gettype($a) === 'object'){
          $r = array_merge($r, formSingleArray($a));
        }
        else{
          $r[$i] = $a;
        }
      }
      return $r;
    }
    $o = new StdClass; $o->really = 'neat';
    $test = formSingleArray(array(0, $o, 1, array('again' => 'works', "you're" => 'welcome'), array('what', array(10, 'really'))));
    print_r($test);
    

    This should work at any depth, as it's recursive.

    评论

报告相同问题?

悬赏问题

  • ¥15 如何在scanpy上做差异基因和通路富集?
  • ¥20 关于#硬件工程#的问题,请各位专家解答!
  • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
  • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
  • ¥30 截图中的mathematics程序转换成matlab
  • ¥15 动力学代码报错,维度不匹配
  • ¥15 Power query添加列问题
  • ¥50 Kubernetes&Fission&Eleasticsearch
  • ¥15 報錯:Person is not mapped,如何解決?
  • ¥15 c++头文件不能识别CDialog