Справочник по PHP - [12]

Шрифт
Интервал


Применение пользовательской функции к элементам массива.

Синтаксис:

bool array_walk(array arr, callback function [, mixed userdata])

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

В случае, если function требует более трех аргументов, при каждом ее вызове будет выдаваться предупреждение. Чтобы блокировать выдачу этих предупреждений, поставте знак "@" перед функцией array_walk() или воспользуйтесь функцией error_reporting().

Функция function будет получать значения и индексы массива arr по занчению, т.е. не сможет вносить в него изменения. Если это необходимо, передайте аргумент arr по ссылке, указав перед его именем "&", и тогда все изменения отразяться в массиве.

В PHP 4 необходимо явно вызывать функцию reset(), чтобы установить внутренний курсор на первый элемент.

Пример использования функции array_walk():

>

>$fruits = array("d" => "lemon", "a" => "orange", "b" => "banana", "c" => "apple");


>function test_alter(&$item1, $key, $prefix)

>{

> $item1 = "$prefix: $item1";

>}


>function test_print($item2, $key)

>{

> echo "$key. $item2
n";

>}


>echo "Before ...:n";

>array_walk($fruits, "test_print");


>array_walk($fruits, "test_alter", "fruit");

>echo "... and after:n";


>array_walk($fruits, "test_print");

?>

Приведенный пример выведет следующее:

Before ...:d. lemona. orangeb. bananac. apple... and after:d. fruit: lemona. fruit: orangeb. fruit: bananac. fruit: apple

Функция поддерживается PHP 3 = 3.0.3, PHP 4, PHP 5

Ключи и значения


array_flip


Меняет местами индексы и значения массива.

Синтаксис:

array array_flip(array arr)

Эта функция "пробегает" по массиву и меняет местами его ключи и значения. Исходный массив arr не изменяется, а результирующий массив просто возвращается. Если в массиве присутствовало несколько элементов с одинаковыми значениями, учитываться будет только последний из них.

Значения массива arr должны быть либо целыми числами, либо строковыми значениями. Иначе пара ключ / значение не будут обработаны.

Функция array_flip() возвратит FALSE, если обработка массива вызвала ошибку.

Пример использования функции array_flip():

>$trans = array_flip ($trans);

>$original = strtr ($str, $trans);


Пример использования функции array_flip():

многократное повторение значения

>

>$trans = array ("a" => 1, "b" => 1, "c" => 2);

>$trans = array_flip ($trans);

>print_r($trans);



Приведенный выше пример выведет следующее:

Array( [1] => b [2] => c)

Функция поддерживается PHP 4, PHP 5


array_keys


Возвращает список из ключей массива.

Синтаксис:

array array_keys(array arr [,mixed search_value])

Функция возвращает массив, значениями которого являются все строковые и числовые ключи массива arr. Если задан необязательный параметр search_value, то она вернет только те ключи, которым соответствуют значению search_value.

Пример испольльзования функции array_keys():

>

>$arr = array(0 => 100, "color" => "red", 15);

>print_r(array_keys($arr));


>$arr = array("blue", "red", "green", "blue", "blue");

>print_r(array_keys($arr, "blue"));


>$array = array ("color" => array("blue", "red", "green"), "size" => array("small", "medium", "large"));

>print_r(array_keys ($array));

?>

Приведенный выше пример выведет следующее:

Array( [0] => 0 [1] => color)Array( [0] => 0 [1] => 3 [2] => 4)Array( [0] => color [1] => size)

Функция array_keys() появилась в PHP 4.

Ее эквивалент для PHP 3:

>function array_keys ($arr, $term="") {

> $t = array();

> while (list($k,$v) = each($arr)) {

> if ($term && $v != $term) {

> continue;

> }

> $t[] = $k;

> }

> return $t;

>}


Функция поддерживается PHP 4, PHP 5


array_values


Удаление ассоциативных индексов массива.

Синтаксис:

array array_values(array arr)

Функция array_values() возвращает список всех значений в ассоциативном массиве arr. При этом она заменяет все строковые ключи на числовые.

Пример использования функции array_values():

>$arr = array("size" => "XL", "color" => "gold");

>print_r(array_values($arr));


Этот пример выведет:

Array( [0] => XL [1] => gold)

Функция поддерживается PHP 4, PHP 5


in_array


Осуществляет проверку массива на наличие значения.

Синтаксис:

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

Функция in_array() возвратит TRUE, если в массиве haystack содержится элемент со значением needle, и FALSE в противном случае.

Если установить третий необязательный параметр strict в значение TRUE, то функция in_array() при проверке также будет сравнивать типы значений.

Замечание: Если параметр needle является строкой, то при сравнении регистр символов учитывается.

Замечание: В PHP версии ниже 4.2.0 параметр needle не мог быть массивом.

Пример использования функции in_array():

>

>$os = array("Mac", "NT", "Irix", "Linux");

>if (in_array("Irix", $os)) {

> echo "Got Irix";

>}

>if (in_array("mac", $os)) {

> echo "Got mac";

>}

?>

Второе условие не сработает, т.к. поиск в массиве идет с учетом регистра.

Пример выведет:

Got Irix

Пример использования функции in_array():


Еще от автора Неизвестный Автор
Галчонок

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Призраки ночи

В книге собраны предания и поверья о призраках ночи — колдунах и ведьмах, оборотнях и вампирах, один вид которых вызывал неподдельный страх, леденивший даже мужественное сердце.


Закат  вечности

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


mmmavro.org | День 131, Победа

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


mmmavro.org | День 132, Поэт

В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.


Песнь о Нибелунгах

…«Песнь о Нибелунгах» принадлежит к числу наиболее известных эпических произведений человечества. Она находится в кругу таких творений, как поэмы Гомера и «Песнь о Роланде», «Слово о полку Игореве» и «Божественная комедия» Данте — если оставаться в пределе европейских литератур…В. Г. Адмони.


Рекомендуем почитать
Первая помощь детям. Советы для тех, кто хочет помочь, когда ребенку плохо

Уважаемые читатели! Кто из вас в экстренной ситуации может правильно оценить состояние попавшего в беду ребенка и своевременно оказать первую помощь? Уровень образования в данном случае не имеет никакого значения. Даже если у вас высшее медицинское образование, в нестандартной ситуации, касающейся ребенка, вы, скорее всего, растеряетесь. Исключение составляют сотрудники реанимационного отделения, а их, к сожалению, немного. В данной брошюре описаны способы оказания первой помощи детям при неотложных состояниях, таких как потеря сознания, остановка дыхания и кровообращения, кровотечения, травмы, ожоги, отравления и др. Брошюра рассчитана на широкий круг читателей и будет полезна не только медицинским работникам, педагогам и родителям, но и подросткам с активной жизненной позицией.


Святой Преподобный Сергей Радонежский. Жизнеописание

«Радуйся, Духа Святаго обитель» Преподобного Сергия Радонежского именуют Ангелом Земли Русской. Его молитва собирала, защищала, оберегала Русь; его служение Пресвятой Троице воплощало идеал русского человека – идеал жизни во Христе. Житие преподобного Сергия было любимым чтением в русских семьях, оно читалось на богослужениях, а в Лавру преподобного по-прежнему стекается русский народ во дни праздников, в печали и в радости. Первое жизнеописание преподобного Сергия было составлено учеником святого – Епифанием Премудрым (первая половина XV века)


Краткие тезисы по режиссуре кино

Некоторые тезисы из учебника Андрея Ангелова «Практическая режиссура кино». Народный бестселлер, и он же лонгселлер XXI века. Первый гениальный киноучебник не только в РФ, но и в мире…


Библиографический указатель трудов сотрудников Луганской агролесомелиоративной научно-исследовательской станции УкрНИИЛХА

Указатель содержит список печатных трудов, опубликованных сотрудниками Донецкой овражной лесной опытной станции и Луганской агролесомелиоративной научно-исследовательской станции УкрНИИЛХА. В списке приведено 340 наименований книг, монографий, брошюр, статей, тезисов докладов, нормативных материалов, указаний, буклетов, информационных листков. К списку прилагается авторский указатель.


Лауреаты российских литературных премий

В современной России дело с литературными премиями обстоит не очень хорошо. Вернее, они существуют, но не несут требуемого от них определяющего значения. Каждая из них — своё собственное направление, выбирающее литературу по заранее заданным условиям. Поэтому, дабы помочь читателю ориентироваться в мире российских литературных премий, выпущено данное издание. Первоначально взяты для рассмотрения лауреаты следующих премий: Русский Букер, Национальный бестселлер, Ясная поляна, Большая книга и НОС.


The Question. Самые странные вопросы обо всем

– Бывают ли крокодилы добрыми? – Кто на самом деле победил на выборах президента в 1996 году? – Может ли в мозгу закончиться место для памяти? – Почему в пупках возникают катышки? – Каково было учиться в советской школе? Эти и другие вопросы задавали пользователи сервиса The Question, а мы в течение последнего года каждый день искали тех, кто даст ответы. В этой книжке 297 самых странных вопроса. Мы не гарантируем, что вы станете умнее, если прочитаете ответы на них, но, по крайней мере, о потраченном времени вы не пожалеете. Книга может вызывать острые приступы любопытства.