首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >array_merge删除空字符串

array_merge删除空字符串
EN

Stack Overflow用户
提问于 2021-09-25 06:56:04
回答 1查看 140关注 0票数 0

当我使用array_merge()时,有一件事我不明白:

代码语言:javascript
复制
$defaultOptions = [
        'active' => null,
        'activeClass' => 'active',
        'wrapper' => [
            'attributes' => null,
            'templateVars' => null
        ],
        'item' => [
            'hasChildrenClass' => '', // this disappears after array_merge
            'attributes' => null,
            'linkAttrs' => null,
            'templateVars' => null
        ]
    ];

    $options = [
        'active' => [5,3],
        'item' => [
            'attributes' => ['class' => 'test']
        ]
    ];

$options = array_merge($defaultOptions, $options);

$options的结果是

代码语言:javascript
复制
[
      'active' => [
        (int) 0 => (int) 5,
        (int) 1 => (int) 3,
      ],
      'activeClass' => 'active',
      'wrapper' => [
        'attributes' => null,
        'templateVars' => null,
      ],
      'item' => [
        'attributes' => [
          'class' => 'test',
        ],
      ],
    ]

我不明白为什么在我的结果中美元选项“项目”消失了?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-09-25 07:25:01

array_merge()中,如果数组具有相同的字符串键,则后面的数组的值将覆盖前一个数组。如果数组有数字键,则后面的数组中的值将与前一个附加在一起。如果数组包含null empty 值,则将跳过该值并从合并的数组中删除。

阅读更多php.net手册

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69323836

复制
相关文章

相似问题

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