[英]There is a way to get all keys of the array?
我想讓數組的所有鍵都將每個鍵與數字進行比較,像這樣:
array(
[0] => 7
[1] => 8
[2] => 4
[3] => 6
)
if (6 != EACH KEY OF ARRAY) {
so...
}
該條件不會顯示,因為當然有[3] => 6並且鍵6 = 6。
有功能嗎? 還有什么?
。
foreach($array as $key => $val)
{
if (6 != $key) {
// so...
}
}
例:
$array = array(7, 8, 4, 6);
foreach($array as $key => $val)
{
if (6 != $key) {
echo '6 is not equal to ' . $key . '<br />';
}
else {
echo '6 is equal to ' . $key . '<br />';
}
}
結果:
6 is not equal to 7
6 is not equal to 8
6 is not equal to 4
6 is equal to 6
但是,如果要檢查數組中是否存在6的值 ,請使用in_array
如下所示:
if (in_array(6, $array)) {
// 6 is present in the array
}
您最需要array_keys
函數:
<?php
$array = array(7,8,4,6);
// Keys is an array of the keys from $array - [0,1,2,3]
$keys = array_keys($array);
print_r($keys);
?>
該print_r的輸出為:
Array
(
[0] => 0
[1] => 1
[2] => 2
[3] => 3
)
(請注意,原始鍵是新數組的值 。)
然后,您要使用in_array
檢查要查找的值是否在數組中:
<?php
echo in_array(6, $keys) // FALSE
?>
如果只想查看數組中是否存在鍵,則這是最快的方法:
$key = 6; // for example
if(isset($myArray[$key]))
{
echo "the key $key is used in the array";
}
if(!in_array(6)) {
}
是的,我知道OP詢問鍵,但是從他的示例看來,他似乎需要值。
我不確定我是否理解您的要求,但其中一種可能適合您:
僅獲取密鑰:
print_r(array_keys($array));
交換鍵和值:
print_r(array_flip($array));
foreach ($array as $key => $value)
{
var_dump($key, $value);
}
您不能使用多個相同的鍵,因此無需遍歷整個數組,只需編寫代碼來查找它。 您可以這樣做:
$arr = Array('1'=>'a','3'=>'b','6'=>'c'); if (array_key_exists('6',$arr)) { echo 'value of 6 = ' . $arr['6']; }
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.