Intereting Posts
Как получить расширенное использование getop () в php, таком как python argparse PHP получает разницу между двумя массивами объектов Как переопределить не подключаемую функцию родительской темы из файла non function.php? Использовать агрегированный метод с новыми классами драйверов MongoDB в PHP Точный таргетинг на директиву Filesmatch DateTime изменяет временную метку во время зимней смены DST есть ли способ получить общие значения между двумя массивами в php? стандартная функция для перевода iso-639 кодов в название языка? Почему я не могу использовать $ this как лексическую переменную в PHP 5.5.4? 999 Код ошибки в запросе HEAD для LinkedIn есть ли способ в PHP перезапустить цикл в foreach или изменить тестовое значение в коммутаторе? регистрирует ошибку php, но не отображает ее в браузере Как заменить NULL на 0 в запросе? Laravel 4: просмотр гнезда внутри макета с данными stream_context_set_params не работает с оберткой ssh2.sftp

Есть способ получить все ключи массива?

Я хочу, чтобы все ключи массива сравнивали каждую клавишу с номером, что-то вроде этого:

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'];
 }