2011-03-16 50 views
0

如:如何檢查數組鍵是否由用戶在PHP中設置?

我創建由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

關於你可以的唯一途徑這樣做是爲了在手動定義鍵時僅使用字符串索引 - 這樣,您可以區分PHP生成的整數索引。你能否解釋一下爲什麼你想要/需要這樣做? – HorusKol 2011-03-16 05:53:40

回答

3

PHP不會跟蹤在陣列中設置項目的操作。

因此,您無法確定某個密鑰是否已被自動確定(作爲最大整數鍵+ 1)或由編寫PHP腳本的開發人員定義。

如果開發人員設置了按鍵,其中串(而不是整數 - 注意'45'計數爲整數,作爲數組鍵一起使用時),你可以這樣做:用PHP生成的密鑰會唯一的整數。
但是,由於這不是你的情況(所有的鍵都是整數,由開發人員編寫或自動創建),你可以做的事情不多。

0

您必須具有對

$arr2 = array('45'=>'24','56'=>'34'); 

所以控制,重量,你能做的就是附加在關鍵的某些字符識別已經由用戶添加:

eg: $arr2 = array('u45'=>'24','u56'=>'34'); 
相關問題