Clu*_*oob 5 php memory arrays integer associative-array
PHP 数组的整数索引和字符串索引有什么区别(当然后者被称为associative array)?
例如,以下两个数组有什么区别:
$intIndex[5] = "Hello";
$intIndex[6] = "World";
$intIndex[7] = "!";
Run Code Online (Sandbox Code Playgroud)
和
$strIndex['5'] = "Hello";
$strIndex['6'] = "World";
$strIndex['7'] = "!";
Run Code Online (Sandbox Code Playgroud)
在第一种情况下, 会发生$intIndex[0]什么$intIndex[4]?
从手册(强调我的):
键可以是整数或字符串。该值可以是任何类型。
此外,还将发生以下关键转换:
- 包含有效整数的字符串将被转换为整数类型。例如,键“8”实际上将存储在 8 下。另一方面,“08”不会被转换,因为它不是有效的十进制整数。
- 浮点数也会转换为整数,这意味着小数部分将被截断。例如,密钥 8.7 实际上将存储在
8.
- [...]
这与 PHP 数组稀疏这一事实无关。
您可以使用var_dump()验证所有这些。