在PHP中,数组的键(key)可以是整数(integer)或字符串(string)。PHP数组的键值对是区分类型的,具体表现如下:
整数键:
$array = [0 => 'a', 1 => 'b'];
这里的 0
和 1
是整数键。字符串键:
$array = ['name' => 'Alice', 'age' => 25];
这里的 'name'
和 'age'
是字符串键。类型转换:
"1"
),PHP会将其自动转换为整数类型。$array = ["1" => 'a', "2" => 'b'];
这里的 "1"
和 "2"
会被转换为整数 1
和 2
。$array = ["01" => 'a', "02" => 'b'];
这里的 "01"
和 "02"
不会被转换为整数。混合键:
$array = [0 => 'a', 'name' => 'Alice'];
这里的 0
是整数键,'name'
是字符串键。浮点数键:
$array = [1.5 => 'a'];
这里的 1.5
会被转换为整数 1
。布尔值键:
true
会被转换为 1
,false
会被转换为 0
。$array = [true => 'a', false => 'b'];
这里的 true
和 false
会被转换为 1
和 0
。NULL键:
NULL
作为键,PHP会将其转换为空字符串 ""
。$array = [null => 'a'];
这里的 null
会被转换为 ""
。$array = [
0 => 'a', // 整数键
'1' => 'b', // 字符串形式的数字键,会被转换为整数 1
'01' => 'c', // 字符串键,不会被转换为整数
1.5 => 'd', // 浮点数键,会被转换为整数 1
true => 'e', // 布尔值键,true 会被转换为整数 1
false => 'f', // 布尔值键,false 会被转换为整数 0
null => 'g' // NULL 键,会被转换为空字符串 ""
];
print_r($array);
Array
(
[0] => f
[1] => e
[01] => c
[] => g
)