Php 保持多维数组';什么是语义?

Php 保持多维数组';什么是语义?,php,arrays,sorting,multidimensional-array,syntax,Php,Arrays,Sorting,Multidimensional Array,Syntax,今天是我在PHP7中从头开始创建任何东西的第一天。无论如何,我的脚本技能还很初级,所以我提前道歉 我一直在看教程页面+搜索Google/Stack,似乎找不到关于多维数组(MDA)的一些基本语法问题的答案 我阅读的教程将MDA显示如下: MDA教程示例: 由于所有层都被简单地命名为数组,对于[$row][$col]来说,不清楚有什么解决方案可以使用自定义句柄命名和标记数组中的元素 显示了一些看起来正确的东西,但这不是一个精确的演示 使用我比较熟悉的数组速记法,是否有类似的效果 例如: 我相信

今天是我在PHP7中从头开始创建任何东西的第一天。无论如何,我的脚本技能还很初级,所以我提前道歉

我一直在看教程页面+搜索Google/Stack,似乎找不到关于多维数组(MDA)的一些基本语法问题的答案

我阅读的教程将MDA显示如下:

MDA教程示例:

由于所有层都被简单地命名为数组,对于[$row][$col]来说,不清楚有什么解决方案可以使用自定义句柄命名和标记数组中的元素

显示了一些看起来正确的东西,但这不是一个精确的演示

使用我比较熟悉的数组速记法,是否有类似的效果

例如: 我相信这是一个相当基本的问题,但正如我所说,我似乎找不到答案


我认为您要寻找的概念只是“关联数组”

您可以创建类似的内容(尝试使用您的示例)

要访问此处的元素,必须按以下方式进行:

$element = $a['Custom1']['Fred']['Otto'][2]; // Last array is numeric
// Now $element has b3.
请记住,不能在每个数组中多次使用同一索引。 所以你不能这么做:

$a = [
    'Custom1' => [
        'Custom2' => [],
        'Custom2' => []
    ]
];
在这里,你可以阅读更多关于

另外,正如在注释中所说,array()只是一个用于创建数组的函数,但您的函数并没有以任何方式命名它。
由于PHP5.4,您可以使用[]符号,我认为这可以使代码更干净。

没有一个层被命名为“数组”。。。是用于创建数组的函数。。。。现在PHP也支持“短数组语法”谢谢,在我花了一个小时编写它之后,我几乎意识到了这一点,但仍然不确定创建跨数组调用元素的语义方式的最佳解决方案。因此,我重新思考了这个问题,使其更符合这些原则。如果您想要创建关联数组,而不是枚举数组,那么您可以指定键和值(作为字符串)。。。主要的限制是,在arrayConsider OOP中,密钥必须是唯一的,如果您正在寻求数据的优雅表示形式,不确定您的问题/问题是什么,它太广泛了。这就是我想要的。谢谢您澄清这一点。我读了你链接到的关于PHP的文章,我甚至在这篇文章中链接到了它。但我发现他们的指南略过了太多,除非你已经理解了页面上90%的内容,否则很难理解,而且有时示例过于简化。就我个人而言,当我能看到一个概念的实际应用时,如果它有意义的话,我发现它更容易掌握。无论如何,再次感谢:)
$a = [
    'Custom1' => [
        'Fred' => [
            'Wez' => ["a", a2, a3],
            'Otto' => ["b", b2, b3],
            'Sam' => ["c", c2, c3]
        ]
    ]
];
$element = $a['Custom1']['Fred']['Otto'][2]; // Last array is numeric
// Now $element has b3.
$a = [
    'Custom1' => [
        'Custom2' => [],
        'Custom2' => []
    ]
];