Код?... Это просто!
php js Jquery JsPhp blog
ТЕГИ:
php (100)
js (87)
php date (19)
online (14)
html (14)
js slice (13)
js array (11)
encode (11)
js date (10)
php array (10)
hash (10)
info (7)
dosite (7)
php img (7)
jsphp (6)
Показать еще :

Находим ключ по значению в php

Как "найти ключ по значению в массиве php?" Рассмотрим несколько вариантов поиска в разных видах массивом по значению! И выведем ключ и его позицию в массиве.

Ищем ключ по значению php.

  1. Как найти по значению ключ массива.
  2. Ищем ключ массива по значению в ассоциативном массиве php.
  3. Ищем ключ массива по значению в ассоциативном массиве второго уровня php.
  4. Ищем ключ массива по значению в ассоциативном массиве второго уровня php №2.
  1. Как найти по значению ключ массива?

    Для того, чтобы найти ключ пао значению вам понадобится:

    Начнем с простого массива, где будем искать ключ по значению. И собственно без примера массива никак:

    $массив = array ( 15, 12 , 'искомое значение', 'слово 2');

    Далее нам понадобится функция array_search :

    Первым аргументом размещаем искомое значение.

    Вторым аргументом ставим массив в котором будем искать ключ по значению:

    $key = array_search('искомое значение', $массив );

    Выведем найденный ключ по значению с помощью echo + выведем сам массив с помощью print_r.

    Код для поиска ключа в массиве по значению:

    Соберем весь код поиска ключа по значению в массиве php:

    <?

    $массив = array ( 15, 12 , 'искомое значение', 'слово 2');

    $key = array_search('искомое значение', $массив );

    print_r( $массив );

    echo $key;

    ?>

    Вывод нашего массива, в котором ищем ключ:

    Array

    (

    [0] => 15

    [1] => 12

    [2] => искомое значение

    [3] => слово 2

    )

    Результат поиска ключа по значению:

    Как видим наш код поиска ключа по значению прекрасно сработал, наш ключ номер 2:

    Иванов
  2. Ищем ключ массива по значению в ассоциативном массиве php.

    Для того, чтобы найти ключ в ассоциативном массиве вам понадобится:

    Давайте создадим ассоциативный массив:

    $второй_массив = array ("1 ячейка" => 15, "2 ячейка" => 12 , "3 ячейка" => "искомое значение" , "4 ячейка" => "слово");

    Выведем его здесь с помощью print_r^

    Array

    (

    [1 ячейка] => 15

    [2 ячейка] => 12

    [3 ячейка] => искомое значение

    [4 ячейка] => слово

    )

    Поступаем аналогично, что и в предыдущем пункте, используем "array_search":

    $key_2 = array_search('искомое значение', $второй_массив );

    Выведем с помощью echo:

    echo $key_2 ;

    Соберем весь код:

    Код нахождения ключа по значению в ассоциативном массиве:

    Соберем весь код "нахождения ключа по значению в ассоциативном массиве" вместе:

    <?

    $второй_массив = array ("1 ячейка" => 15, "2 ячейка" => 12 , "3 ячейка" => "искомое значение" , "4 ячейка" => "слово");

    $key_2 = array_search('искомое значение', $второй_массив );

    echo $key_2 ;

    ?>

    Результат поиска ключа по значению в ассоциативном массиве:

    Разместим выше приведенный код поиска ключа прямо здесь:

    3 ячейка
  3. Ищем ключ массива по значению в ассоциативном массиве второго уровня php.

    Предположим, что вам нужно найти ключ по значению в ассоциативном двух уровневом массиве, например таком:

    Array

    (

    [Иванов] => Array

    (

    [Саша] => Array

    (

    [рост] => 198

    )

    )

    [Петров] => Array

    (

    [Вася] => Array

    (

    [рост] => 198

    )

    [Саша] => Array

    (

    [рост] => 178

    )

    )

    )

    Непонятно..

    Здесь, при выводе немного непонятная структура массива, вот так он выглядит в коде:

    $третий_массив['Иванов']['Саша']['рост'] = '198';

    $третий_массив['Петров']['Вася']['рост'] = '198';

    $третий_массив['Петров']['Саша']['рост'] = '178';

    Здесь я даю короткий массив, но массивы бывают большими... очень большими...
    Предположим, что вам нужно найти ключ массива со значением "198" ( Обращаю ваше внимание! ) и вообще позицию в данном массиве.

    Код поиска ключа по значению в двухуровневом массиве.

    Здесь применен массив foreach и только на последнем этапе, когда мы добрались до одномерного массива используем "array_search"

    <?

    foreach ($третий_массив as $key => $value)

    {

    foreach ($value as $key2 => $value1)

    {

    if(array_search('198', $value1 ))

    {

    $key_3 = array_search('198', $value1 );

    $позиция = '$третий_массив['.$key.']['.$key2.']['.$key_3.']';

    }

    }

    }

    echo $key_3;

    echo $позиция ;

    ?>

    Результат поиска ключа по значению в двухуровневом массиве.

    рост

    Обращаю ваше внимание, что мы получили последнее вхождение - как получить первое вхождение ?

    $третий_массив[Петров][Вася][рост]
  • Ищем ключ массива по значению в ассоциативном массиве второго уровня php №2.

    Предположим, что в этом же массиве вам потребовалось получить первое вхождение занчения и получить его ключ!

    Для этого вма понадобится:

    Теория и код из предыдущего пункта. Только немного изменим приведенный код:

    Изменим названия переменных, которые будем выводить, чтобы они не перекрывали друг друга.

    При первом нахождении значения используем break - здесь также обращаю ваше внимание на break

    Соберем весь код:

    Код поиска ключа массива по значению в ассоциативном массиве второго уровня php №2.

    Для того, чтобы получить первое вхождение значения и получения ключа вам потребуется

    <?

    foreach ($третий_массив as $key => $value)

    {

    foreach ($value as $key2 => $value1)

    {

    if(array_search('198', $value1 ))

    {

    $key_4 = array_search('198', $value1 );

    $позиция_2 = '$третий_массив['.$key.']['.$key2.']['.$key_4.']';

    $break=1;

    }

    }

    if($break) break;

    }

    echo $key_4;

    echo $позиция_2 ;

    ?>

    Результат поиска ключа по значению в двухуровневом массиве.

    рост
    $третий_массив[Иванов][Саша][рост]


    Теги:

    php найти ключ по значению

    php массивы найти ключ по значению

    php array ключ по значению php

    php получить ключ по значению

    jsphp.ru есть здесь:
    Полезные ссылки:
    ruweb
    Я писал немного о ruweb.net!
    Помочь проекту JsPhp.ru

    Что можно сделать!?

    Поделиться ссылкой! C друзьями или врагами!


    Помочь проекту JSPHP.RU: Помочь проекту JSPHP.RU прокомментировать :

    Скоро...


    Мои Проекты :

    Скоро...



    О хостинге :

    Скоро...


    © jsphp.ru 2023 - 2024 , Аминев Марат. Контакты
    Страница загружена за : 0.007291 секунд.