gpt4 book ai didi

php - PHP中Array和Hash有什么区别?

转载 作者:可可西里 更新时间:2023-11-01 13:36:49 24 4
gpt4 key购买 nike

Array 和 Hash PHP 有什么区别?

一个数组: array(1,2,3...)
哈希:array(key1=value1, key2=value2, ...)

它们是不同的还是相同的?

※ 比如函数参数allows array对hash有效吗?

因为我是用约定俗成的语言来区分的,用过的,所以很纳闷。

最佳答案

你所描述的都是数组。两者之间的唯一区别是您明确设置了第二个 key ,因此它们被称为 associative arrays。 .我不知道您从哪里获得哈希术语(Perl?),但这不是它们在 PHP 中的名称。

因此,例如,如果您要这样做:

$foo = array(1,2,3,4,5);
print_r($foo);

输出将是:

Array
(
[0] => 1
[1] => 2
[2] => 3
[3] => 4
[4] => 5
)

如您所见,访问您输入的各个值的键是为您创建的,但仍然存在。所以这个数组本质上也是关联的。数组的另一种“类型”是完全相同的方式,除了你明确地说“我想使用 this 键访问 this 值”而不是自动数字索引(尽管您提供的 key 也可以是数字)。

$bar = array('uno' => 'one', 'dos' => 'two');
print_r($bar);

会输出:

Array
(
[uno] => one
[dos] => two
)

正如您随后所料,执行 print $bar['one'] 会输出 uno,而执行 $foo[0]第一个示例将输出 1

就函数而言,PHP 函数在大多数情况下会采用这些“类型”数组中的任何一种并执行您希望它们执行的操作,但需要注意它们之间的区别,因为有些函数会做一些奇怪的事情到你的索引,有些不会。通常最好在使用数组函数之前阅读文档,因为它会注明输出内容取决于数组的键。

你应该 read the manual获取更多信息。

关于php - PHP中Array和Hash有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/885766/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com