Я хочу, чтобы все ключи массива сравнивали каждую клавишу с номером, что-то вроде этого:
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
функции 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"; }
Я не уверен, понимаю ли я то, что вы просите, но один из них, вероятно, подойдет вам:
Получите только ключи:
print_r(array_keys($array));
Обменивает ключи со значениями:
print_r(array_flip($array));
foreach ($array as $key => $value) { var_dump($key, $value); }
if(!in_array(6)) { }
Да, я знаю, что OP спрашивает о ключах, но из его примера кажется, что он хочет ценностей.
вы не можете иметь более одного ключа, поэтому нет необходимости цитировать весь массив, просто пишите код, чтобы его искать. вы можете сделать это:
$ arr = Array ('1' => 'a', '3' => 'b', '6' => 'c'); if (array_key_exists ('6', $ arr)) { echo 'значение 6 ='. $ Обр [ '6']; }