E.g:
我在PHP中创建了一个数组:
$arr1 = array('123','3434','43434');
或
$arr2 = array('45'=>'24','56'=>'34');
所以,我想检查$ arr1的密钥是不是由用户设置的,而$ arr2的密钥是由用户设置的??
换句话说,我可以这样做吗:
if('key was set by PHP'){ //
// do something
}
else{
// key was set by user.do something...
}
非常感谢!!
答案 0 :(得分:3)
PHP不会跟踪在数组中设置项目的操作。
因此,您无法确定是否已自动确定密钥(作为最大整数键+ 1)或由编写PHP脚本的开发人员定义。
如果开发人员设置的字符串(而不是整数 - 请注意'45'
计为整数,当用作数组键时),您可以执行某些操作:PHP生成的密钥将是唯一的整数。
但是,由于这不是你的情况(所有键都是整数,无论是由开发人员编写还是自动创建),你都无法做到。
答案 1 :(得分:0)
你必须掌控
$arr2 = array('45'=>'24','56'=>'34');
所以,你可以做的是在键中添加一些字符,以识别它已被用户添加:
eg: $arr2 = array('u45'=>'24','u56'=>'34');