Jac*_*cob 78

http://php.net/manual/en/language.types.array.php

<?php
$array = array(
    "foo" => "bar",
    "bar" => "foo",
);

// as of PHP 5.4
$array = [
    "foo" => "bar",
    "bar" => "foo",
];
?>
Run Code Online (Sandbox Code Playgroud)

标准数组可以这种方式使用.

  • @Grad:或者`asort`. (3认同)
  • 请参阅此页面:http://php.net/manual/en/array.sorting.php。PHP 中有 20 多种排序方法;-)。你可能需要 `ksort`。 (2认同)
  • @Felix:是的。我的意思是在这种情况下,一个 ;-) asort 更好。:-) (2认同)
  • 让一位同事从 C 背景开始在 php 中工作。他问我怎么用ph​​p做字典,我说wtf是字典o_o现在我知道了 (2认同)

Bré*_*ęll 17

不,php 中没有字典。你拥有的最接近的东西是一个数组。但是,数组与字典的不同之处在于数组同时具有索引和键。字典只有键,没有索引。我是什么意思?

$array = array(
    "foo" => "bar",
    "bar" => "foo"
);

// as of PHP 5.4
$array = [
    "foo" => "bar",
    "bar" => "foo",
];
Run Code Online (Sandbox Code Playgroud)

上面的数组允许使用以下行,但如果它是字典,则会出现错误。

print $array[0]
Run Code Online (Sandbox Code Playgroud)

Python 有数组和字典。


Jso*_*owa 7

Normalarray可以作为字典数据结构。一般来说,它有多种用途:数组、列表(向量)、哈希表、字典、集合、堆栈、队列等。

$names = [
    'bob' => 27,
    'billy' => 43,
    'sam' => 76,
];

$names['bob'];
Run Code Online (Sandbox Code Playgroud)

而且由于设计广泛,它没有获得特定数据结构的全部好处。您可以通过扩展来实现您自己的字典,ArrayObject或者您可以使用SplObjectStorage类,该类是映射(字典)实现,允许将对象分配为键。