我正在尝试在php中执行以下操作
array(
'email@domain.com' => 'something',
...
);
我确实读过php接受并将数字或有效字符串作为键。
将电子邮件ID作为上述数组中的键是否安全? 安全我的意思是,当用这个
进行编码时,这可能会导致任何类型的错误或异常或问题注意: 我会在这个数组中有几个100项目,这是我需要注意的事情
请告诉我
答案 0 :(得分:4)
简答:如果它可以是PHP中的字符串,那么现在它可以安全地用作关联数组键。
答案很长:来自PHP manual:
密钥可以是整数或字符串。值可以是任何值 类型。
此外还会发生以下关键演员:
包含有效整数的字符串将强制转换为整数类型。 例如。关键" 8"实际上将存储在8下。另一方面 " 08"不会被强制转换,因为它不是有效的十进制整数。
花车是 也转换为整数,这意味着小数部分将是 截断。例如。密钥8.7实际上将存储在8下。Bools是 也转换为整数,即关键字真实存储在其中 1,密钥假为0。
Null将被强制转换为空字符串, 即,密钥null实际上将存储在""。
下数组和对象 不能用作钥匙。这样做会导致警告:非法 偏移类型。
如果数组声明中有多个元素使用 相同的密钥,只有最后一个将被用作所有其他密钥 覆盖。