【问题标题】:Need help about array需要有关阵列的帮助
【发布时间】:2009-09-30 10:07:51
【问题描述】:

做什么

$categories[$id] = array('name' => $name, 'children' => array());     

$categories[$parentId]['children'][] = array('id' => $id, 'name' => $name); 

是什么意思?

非常感谢。

【问题讨论】:

  • 你很可能需要把这个烂摊子分成几个简单的问题。为什么需要解析你的问题来回答一个简单的语法问题?
  • 请格式化您的代码。见stackoverflow.com/editing-help

标签: php multidimensional-array


【解决方案1】:

我应该如何格式化输出,以便了解返回的结果?

  1. 您可以通过使用forforeach 在数组上循环来将代码格式化为表格。如果您不了解循环,请阅读每个文档。

2.做什么

$categories[$id] = array('name' => $name, 'children' => array());

$categories[$parentId]['children'][] = array('id' => $id, 'name' => $name);

第一行将关联数组分配给 $categories 数组的另一个元素。例如,如果您想要 ID 为 6 的类别名称,它看起来像这样:

$categories[6]['name']

第二行做了类似的事情,除了当您在 PHP 中使用数组时,您可以使用 [] 运算符自动将另一个元素添加到具有下一个可用索引的数组中。

.= 的用途是什么?

这是连接赋值运算符。以下两条语句是等价的:

$string1 .= $string2
$string1 = $string1 . $string2

【讨论】:

    【解决方案2】:

    这些都与嵌套数组有关。 第一个例子:

    $categories[$id] = array('name' => $name, 'children' => array()); 
    

    $categories 是一个数组,您将键 id 设置为包含另一个数组,其中包含名称和另一个数组。你可以用这个来完成类似的事情:

    $categories = array(
       $id => array(
          'name' => $name,
          'children' => array()
       )
    )
    

    第二个是设置第一个示例中的 children 数组。当数组中有数组时,可以使用多个索引。然后在该数组中设置 ID 和名称。这是查看示例 #2 的另一种方式:

       $categories = array(
           $parentID => array(
               'children' => array(
                    'id' = $id,
                    'name' => $name
                )
           )
       )
    

    注意:我的两种重写方式在功能上与您发布的相同,我只是希望这可以更容易地可视化正在发生的事情。

    【讨论】:

      猜你喜欢
      • 2011-09-02
      • 1970-01-01
      • 1970-01-01
      • 2015-06-23
      • 2014-12-26
      • 2013-08-12
      • 2014-06-11
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多