Операции с массивами
1) <?php $a = array("и"=>"Информатика", "м"=>"Математика"); $b = array("и"=>"История", "м"=>"Биология", "ф"=>"Физика"); $c = $a + $b; $d = $b + $a; print_r($c); // получим: Array([и]=>Информатика [м]=>Математика [ф]=>Физика) print_r($d); // получим: Array([и]=>История [м]=>Биология [ф]=>Физика) ?>
2) <?php $a = array("и"=>"Информатика", "м"=>"Математика"); $b = array("м"=>"Математика", "и"=>"Информатика"); if ($a == $b) echo "Массивы равны и"; else echo "Массивы НЕ равны и "; if ($a === $b) echo " эквивалентны"; else echo " НЕ эквивалентны"; // получим echo "Массивы равны и НЕ эквивалентны" ?>
3) Функция count <?php $del_items = array("langs" => array("10"=>"Python", "12"=>"Lisp"), "other"=>"Информатика"); echo count($del_items)."<br>"; // выведет 2 echo count($del_items, COUNT_RECURSIVE); // выведет 4 ?> 4) Функция in_array
<?php $langs = array("Lisp", "Python", "Java", "PHP", "Perl"); if (in_array("PHP", $langs)) echo "Надо бы изучить PHP<br>"; // выведет сообщение "Надо бы изучить PHP" if (in_array("php", $langs)) echo "Надо бы изучить php<br>"; // ничего не выведет, поскольку в массиве есть строка "PHP", а не "php" ?> Функция array_search <?php $langs = array("Lisp", "Python", "Java", "PHP", "Perl"); if (!array_search("PHP", $langs)) echo "Надо бы изучить PHP<br>"; else { $k = array_search("PHP", $langs); echo "PHP изучен $k – м"; } ?>
Функция array_keys
<?php $langs = array("Lisp", "Python", "Java", "PHP", "Perl", "Lisp"); $lisp_keys = array_keys($langs, "Lisp"); echo "Lisp входит в массив ".count($lisp_keys)." раза:<br>"; foreach ($lisp_keys as $val) echo "- под номером $val<br>"; ?>
7) Функция array_unique <?php $langs = array("Lisp", "Java", "Python", "Java", "PHP", "Perl", "Lisp"); print_r(array_unique($langs)); ?>
Сортировка массивов Функция sort
<?php $items = array(10 => "хлеб", 20 => "молоко", 30 => "бутерброд"); sort($items); // строки сортируются в алфавитном порядке, ключи теряются print_r($items); $rev_items = array("хлеб" => 10, "бутерброд" => 30, "молоко" => 20); sort($rev_items); // числа сортируются по возрастанию, ключи теряются print_r($rev_items); ?> Функции asort, rsort, arsort
<?php $books = array("Пушкин"=>"Руслан и Людмила", "Толстой"=>"Война и мир", "Лермонтов"=>"Герой нашего времени"); asort($books); // сортируем массив, сохраняя значения ключей print_r($books); echo "<br>"; rsort($books); // сортируем массив в обратном порядке, ключи будут заменены print_r($books); ?> // <form action=task.php> <table border=1> <tr> <td>Название: </td> <td><input type=text name=title size=5></td></tr> <tr> <td>Краткое содержание: </td> <td><input type=text name=description size=5></td> </tr> <tr> <td>Автор: </td> <td><input type=text name=author size=5></td> </tr> <tr> <td>Дата публикации: </td> <td><input type=text name=published size=5></td> </tr> </table> <input type=submit value="Отправить"> </form> // <?php print_r($_GET); echo "<br>"; // сортируем массив в обратном порядке, сохраняя ключи arsort ($_GET); print_r($_GET); echo "<br>"; // составляем новый массив $ordered_names = array_keys($_GET); // выводим элементы нового массива foreach($ordered_names as $key => $val) echo "$key:$val <br>"; ?>
|