Поиск в массиве

May 4, 2010 by admin Комментировать »

Для нахождения элемента или ключа в массиве существует несколько встроен­ных функций.

Функция InarrayO

Данная функция проверяет, существует ли указанный элемент в массиве. Фор­мат записи функции:

bool in_array ( mixed needle, array haystack [, bool strict] )

Параметр needle указывает, что ищем, a в параметре haystack указывается имя массива, в котором проводится поиск. Необязательный параметр strict ука­зывает, что при поиске необходимо учитывать и тип искомого элемента. Рассмот­рим пример.

<?php

$а = агray{"Понедельник","Пятнрща","Среда"."Четверг", "Среда","24");

if (in_array(24,$а)) { echo " Нашел I" ;

}

else {

echo "В массиве нет";

}

?>

‘ Данный код выведет на экран слово " Нашел!", даже несмотря на то, что в усло­вии поиска был задан элемент 24 типа integer, а в массиве присутствует элемент "24"типа string.

Если разработчику нужно и соответствие типов, то необходимо в качестве третьего параметра указать значение TRUE. Следующий код объявит, что не нашел искомого элемента, так как значения 24 и " 24" имеют разный тип.

<?php

$а = array("Понедельник","Пятница","Среда", "Четверг","Среда","24");

if (in_array(24,$a,TRUE)) { echo "Нашел!";

}

else {

echo "В массиве нет";

}

?>

Как уже было сказано в предыдущих главах, язык РНР пытается самостоятель­но определять типы переменных и элементов массивов, однако у разработчика все­гда остается возможность проводить те или иные операции с учетом этих типов.

Функция Array_key_exists()

Функция array_key_exists () проверяет, существует ли указанный ключ или индекс в массиве. Формат записи следующий:

bool array_key_exists ( mixed key, array search )

В функции существует два параметра: key — ключ, наличие которого необхо­димо проверить, и search — имя массива, в котором осуществляется поиск. Рас­смотрим пример поиска ключа.

<?php

$а = array(

"color" => "Green", "model" => "Focus"

);

if (array_key_exists("color",$a)) { echo "Нашел!";

}

else (

echo "B массиве нет":

}

?>

Данный код выведет на экран слово " Нашел! ", так как в массиве $а существует элемент с ключом " color".

функция Array searchQ

Функция array_search () используется для поиска элемента массива. В случае его нахождения возвращается его ключ, в случае неудачи — Null. Формат записи функции:

mixed array_search ( mixed needle, array haystack [, bool strict] )

Для демонстрации поиска в массиве haystack элемента needle можно рассмот­реть такой пример.

<?php

$а = array(

"book" => "Профессиональная работа с РНР 5", "subject" => "РНР"

) ;

echo "Ключ элемента со значением РНР:

[" . array_search("РНР", $а) . " ] " ; ?>

В результате в браузере будет выведен такой текст. Ключ элемента со значением РНР: [subject]

Необязательный параметр strict может указываться в тех случаях, когда не­обходимо совпадение типов искомых значений.

Оставить комментарий

микросхемы мощности Устройство импульсов питания пример приемника провода витков генератора выходе напряжение напряжения нагрузки радоэлектроника работы сигнал сигнала сигналов управления сопротивление усилитель усилителя усиления устройства схема теория транзистора транзисторов частоты