dtgv52982 2013-02-19 11:39
浏览 208
已采纳

PHP解包数组

I would like to learn a smart way to unpack nested array. For instance, i have an array variable $rma_data['status'] which looks like below;

 [status] => Array
    (
        [0] => Array
            (
                [created] => 1233062304107
                [statusId] => 5
                [statusName] => Open
            )

        [1] => Array
            (
                [created] => 1233061910603
                [statusId] => 2
                [statusName] => New
            )

        [2] => Array
            (
                [created] => 1233061910603
                [statusId] => 1
                [statusName] => Created
            )

    )

I would like to store the Created timestamps and statusId into an variables based on the condition like: if we find out there is "Open" status exist, we will use Open instead of "New" and "Created" . If there is only New and Created, we will use New instead .

Current version of my way to do that:

for($i=0; $i<count($rma_data['status']); $i++)
                {
                    switch($rma_data['status'][$i]['statusId'])
                    {
                        case 5: 

                                            case 2:

                                            case 3:
                }

Any ideas?

  • 写回答

4条回答 默认 最新

  • douxiuyu2028 2013-02-19 11:48
    关注

    For small to medium scale, what you already have looks good.

    My only suggestions would be to use additional variables, for example the count and to unroll some of the compact code to be more efficient and readable.

    For example:

    $total=count($rma_data['status']);
    for($i=0; $i<$total; $i++){
        $x=$rma_data['status'][$i];
        if($x['statusName']=='Open'){ // Use your criteria
            $t=$x['created'];
            //...Do Work
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(3条)

报告相同问题?

悬赏问题

  • ¥15 根据会员信息表绘制堆积柱状图
  • ¥100 华为手机私有App后台保活
  • ¥20 有谁能看看我coe文件到底哪儿有问题吗?
  • ¥20 我的这个coe文件到底哪儿出问题了
  • ¥15 matlab使用自定义函数时一直报错输入参数过多
  • ¥15 设计一个温度闭环控制系统
  • ¥100 rtmpose姿态评估
  • ¥15 java 通过反射找路径下的类,打包后就找不到
  • ¥15 通联支付网上收银统一下单接口
  • ¥15 angular有偿编写,