在PHP中,数组键是否有某种限制?长度?不可接受的字符串?
在官方文档中只找到了这个内容,但是没有关于键限制的信息。
一个键可以是整数或字符串。如果一个键是标准表示的整数,它将被解释为整数(即“8”将被解释为8,而“08”将被解释为“08”)。键中的浮点数会被截断为整数。在PHP中,索引和关联数组类型是相同的类型,它们都可以包含整数和字符串索引。*
简而言之:虽然您没有受到PHP的限制,但应该自我限制。如果有相当长的字符串,请考虑通过md5()或sha1()(或任何其他哈希函数)来缩短键的长度。
这个问题几乎完全相同。但是,如果您不想相信任何非官方的东西,只需使用更小的键即可。您甚至可能会从中获得一些性能优势。
编辑:正如PHP手册所说:
注意:一个字符串变得非常大并不成问题。PHP对字符串的大小没有限制;唯一的限制是PHP运行所在计算机的可用内存。
你确定你是在引用键吗?还是指的值?
使用关联数组: $array = new array( new array( "key"=>"value" ) );
..至于键,理论上长度没有限制,但是如果您经常想要重复使用它们,选择长键不是一个好主意。
至于值,您应该查看一般数组和允许的数据类型等内容。
希望这可以帮助到您。