首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将array_values应用于对象内的每个数组字段

将array_values应用于对象内的每个数组字段
EN

Stack Overflow用户
提问于 2014-06-27 17:01:39
回答 1查看 602关注 0票数 0

我有一个PHP stdClass对象。在内部,它可以是许多字段,其中一些是数组。此外,字段也可以是一个对象,它可以包含带有数组的字段。

其思想是在找到数组时遍历对象并执行array_values操作。

例如,一个可能的对象可以如下:

代码语言:javascript
复制
object(stdClass)#1 (3) {
["name"]=>
string(14) "I am an object"
["object"]=>
object(stdClass)#2 (3) {
  ["0"]=>
  string(6) "item 1"
  ["1"]=>
  string(6) "item 2"
  ["2"]=>
  array(3) {
    [0]=>
    string(3) "3.1"
    [1]=>
    string(3) "3.2"
    [2]=>
    string(3) "3.3"
  }
}
["list"]=>
array(3) {
  [0]=>
  string(6) "item 1"
  [1]=>
  string(6) "item 2"
  [2]=>
  string(6) "item 3"
}
}

对于如何递归遍历对象并将array_values应用于每个数组,有什么想法吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-30 14:56:58

我终于使用了这个功能。这正是我想要的。

代码语言:javascript
复制
function rec_array_values(&$item){
    if(is_object($item)){
        foreach ($item as $key => &$value) {
            $key = rec_array_values($value);
        }
    }else if(is_array($item)){
        foreach ($item as $key => &$value) {
            $key = rec_array_values($value);
        }
        $item = array_values($item);
    }
}
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24457185

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档