doutian3010 2010-08-24 19:11
浏览 57
已采纳

递归数组键替换

I have quite big recursive array with mixed numeric and string keys.

Which is the fastest way to replace the numeric keys with string keys (prefix each numeric with item_)?

eg.

array('key_1' => 'val1', 2 => array( 3 => 'val3'));

to

array('key_1' => 'val1', 'item_2' => array('item_3' => 'val3'));

I want the order of the items remain the same.

  • 写回答

1条回答 默认 最新

  • doutuo3575 2010-08-24 19:31
    关注
    function replace_numeric_keys(&$array) {
        $result = array();
        foreach ($array as $key => $value) {
            if (is_int($key)) $key = "item_$key";
            if (is_array($value)) $value = replace_numeric_keys($value);
            $result[$key] = $value;
        }
        return $result;
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 kafka 分区副本增加会导致消息丢失或者不可用吗?
  • ¥15 微信公众号自制会员卡没有收款渠道啊
  • ¥15 stable diffusion
  • ¥100 Jenkins自动化部署—悬赏100元
  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误