【问题标题】:Do I need to initialise every key of a multidimensional array in PHP?我需要在 PHP 中初始化多维数组的每个键吗?
【发布时间】:2014-05-24 11:50:14
【问题描述】:

严格来说/最佳实践:我需要设置每个“更深的嵌套子数组”还是您可以访问它?

//so do I need to do this:
if(!isset($multiArray[$newKey])) $multiArray[$newKey] = array();

//before I can do this?
$multiArray[$newKey][] = 'somevalue';

【问题讨论】:

    标签: php multidimensional-array key


    【解决方案1】:

    严格来说不会,PHP 会在将值推送给它之前创建新数组,没有任何问题。

    最佳实践?这可能是基于个人意见,我会说首先创建数组以提高可读性,这在逻辑上是有意义的。如果其他开发人员获取了您的代码,那么您正在创建一个新数组而不是推送到现有数组可能并不明显。

    【讨论】:

      【解决方案2】:

      在 PHP 中初始化变量不是必须的,但是这是一个非常好的做法。未初始化的变量具有其类型的默认值,具体取决于使用它们的上下文 - 布尔值默认为 FALSE,整数和浮点数默认为零,字符串(例如在 echo 中使用)设置为空字符串,数组变为空数组。

      来源:PHP手册http://fr2.php.net/manual/en/function.array-multisort.php

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2021-12-07
        • 2016-07-17
        • 1970-01-01
        • 2023-01-27
        • 2015-08-01
        • 1970-01-01
        相关资源
        最近更新 更多