Функции для работы с массивами




Целое число (Integer)

Как вам известно, числа бывают положительные, отрицательные и в разных системах исчисления. Чаще всего подразумевается что целое это число из множества Z = {..., -2, -1, 0, 1, 2,...}.

 

<?php
$a = 1234;
// десятичное число
$a = -123;
// отрицательное число
$a = 0123
; // восьмеричное число (83 в десятичной системе)
$a = 0x1A; // шестнадцатеричное число (26 в десятичной системе)
?>

Дробные числа (Float)

Числа с плавающей точкой, к примеру результата деления 7 на 3.

<?php
$a = 1.234;
$b = 1.2e3; // 1.2 * 10^3
?>

Строки (String)

Строка – это набор символов. В PHP символ это то же самое, что и байт, это значит, что возможно ровно 256 различных символов.
Замечание: Нет никаких проблем, если строка очень велика. Практически не существует ограничений на размер строк, налагаемых PHP, так что нет абсолютно никаких причин беспокоиться об их длине.
Строки в php можно определить тремя способами: одинарными кавычками, двойными кавычками и heredoc синтаксисом.

<?php
echo 'это простая строка';

echo 'Однажды Арнольд сказал: "I\'ll be back"';

// Выведет: Однажды Арнольд сказал: “I'll be back”
// Обратный слэш выполняет функцию экранирования.

Строка в двойных кавычках
Так же как и в одинарных, текст взятый в двойные кавычки это строка.
$var = "val";
Если строка определяется в двойных кавычках, либо при помощи Heredoc, переменные внутри нее обрабатываются.

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

<?php

$beer = 'Heineken';
echo "$beer's taste is great";
// работает
echo "He drank some $beers";
// не работает
echo "He drank some ${beer}s";
// работает
echo "He drank some {$beer}s";
// работает

?>

Heredoc – текст ведет себя так же, как и строка в двойных кавычках, при этом их не имея. Это означает, что вам нет необходимости экранировать кавычки в heredoc.
Напомню что если в строке определенной кавычками встречается кавычка, нужно сообщить php что это часть строки – экранировать кавычку. Как в примере $var=' I\'m ';

<?php

echo <<<HEREDOC1
Меня зовут "$name".
Я печатаю very$fast.
Теперь я вывожу very{$fast}.

HEREDOC1;

?>

Обратите внимание что вместо кавычек в начале и конце строки стоит название строки – HEREDOC1. <<<HEREDOC1 означает начало строки под названием HEREDOC1, а HEREDOC1; её конец.

Массив (Array)

Массив в php – это переменная которая хранит несколько элементов.

<?php

$array = Array('Первый','Второй');

?>

Необычным может показаться, что индекс массива начинает отсчет с нуля. Именно поэтому в нашем массиве нулевой элемент будет 'Сыр', а первый элемент 'Колбаса'.

<?php

$array = Array('Первый','Второй'); // массив с двумя строками
echo $array[0];
//Обращение к нулевому элементу. Выведет Первый
$array[1] = 'Третий';
// Присвоение элементу другого значения.
echo $array[1]; // Выведет «Третий».
$arr[3] = 5; // Создаётся элемент с индексом 3 и ему тут же //присваивается

?>

Если написать подобную строку $arr[] = 6;
В этом случае, создастся элемент в массиве, ему присвоится значение 6, а индекс с которым элемент запишется в массив будет максимальный целочисленные уже существующий индекс + 1.
Т.о. после $arr[3] = 5; максимальный целочисленный индекс стал 3.
При $arr[] = 6; максимальный индекс + 1 будет 4. Таким образом $arr[4] становится 6.

<?php

$arr = Array('Экзамен');
$arr[] = 'Зачет';
// Каким будет индекс у элемента «Зачет»?

/* ОТВЕТ:

Максимальный индекс будет «0»,
значит элемент массива «Зачет» будет иметь индекс «1».

*/

?>

Ассоциативные массивы

С таким же успехом как и в предыдущем примере, элементами массива могут быть не только строки, но и другие переменные.
$array = Array($var1, $var2);
У любой переменной есть название и есть значение, а это значит что в массив мы можем также записать пары данных в виде название – значение. Массив такого рода называется ассоциативным благодаря ассоциации названия и значения, а название в таком массиве называется ключом.
$arr = Array('key'=>'edit', 'key2'=>'edit2');
Таким образом в массиве нет нулевого и первого элемента, но есть элемент key и элемент key2.

<?php $arr = Array('key'=>'edit', 'key2'=>'edit2'); // Определяем массив с
// двумя строками
echo $arr['key']; // Обращение к элементу с ключом key. Выведет edit
echo $arr[0];
// Обращение к нулевому элементу. Ошибка. Нет такого
//элемента
$arr['key2'] = 'Второй'; // Присвоение элементу с ключом key2
//нового значения.
echo $arr['key2']; // Выведет «Второй».

?>

Многомерные массивы

Для создания подобных массивов используются следующие конструкции:

<?php

$arr = array("number" => array(6 => 5, 13 => 9, "a" => 42));
echo $arr["number "][6];
// 5
echo $arr["number "][13]; // 9
echo $arr["number "]["a"]; // 42

?>

Функции для работы с массивами

1) in_array (значение, имя_массива);

Функция поиска элемента в массиве. Ищет в массиве элемент значение (или индекс) которого указаны в первом аргументе функции. Функция возвращает значение TRUE либо FALSE.

 

Пример: Результат:

<?php

$arr = Array('one', 'two', 'three');

$fa='three';

if (in_array($fa,$arr))

{

echo "That’s ok";

}
?>

2) count(имя_массива); или sizeof(имя_массива);

Функция определяет количество элементов массива и возвращает целое значение. В качестве аргумента указывается имя массива.

 

Пример: Результат:

<?php

$arr = Array('one', 'two', 'three');

echo count($arr);

?>

3) sort(имя_массива, тип_сортировки);
Функция позволяет сортировать массив по возрастанию. Тип сортировки массива определяется специальной командой. Можно не указывать тип сортировки, тогда будет выбрана сортировка по умолчанию:

– SORT_REGULAR – по умолчанию
– SORT_NUMERIC – для чисел
– SORT_STRING – для символов

Пример: Результат:

<?php

$arr=Array(2,4,3,1);

for ($i=0;$i<count($arr);$i++)

{

echo $arr[$i];

echo " ";

}

?>

<br>

<?php

sort($arr,SORT_NUMERIC);

for ($i=0;$i<count($arr);$i++)

{

echo $arr[$i];

echo " ";

}

?>

4) rsort (имя_массива, тип_сортировки);
Функция позволяет сортировать массив по убыванию. Тип сортировки массива аналогично предыдущему.

5) asort (имя_массива, тип_сортировки);
Функция позволяет сортировать ассоциативный массив по возрастанию. Тип сортировки массива аналогично предыдущему.

5) arsort (имя_массива, тип_сортировки);
Функция позволяет сортировать ассоциативный массив по убыванию. Тип сортировки массива аналогично предыдущему.

6) array_push (имя_массива, элемент_1, элемент_2, …, элемент_n);
Функция позволяет добавлять элементы в конец массива.

7) array_unpush (имя_массива, элемент_1, элемент_2, …, элемент_n);
Функция позволяет добавлять элементы в начало массива.

Пример: Результат:

<?php

$arr=Array(2,4,3,1);

array_push($arr,6,5);

for ($i=0;$i<count($arr);$i++)

{

echo $arr[$i];

}

?>

8) array_pop (имя_массива);
Функция позволяет удалять последний элемент массива.

9) array_shift (имя_массива);
Функция позволяет удалять первый элемент массива.

Пример: Результат:

<?php

arr=Array(2,4,3,1);

array_pop($arr);

for ($i=0;$i<count($arr);$i++)

{

echo $arr[$i];

}

?>

10) array_mirge (имя_массива_1, имя_массива_2, имя_массива_n);
Функция позволяет удалять первый элемент массива.

Пример: Результат:

<?php

$arr=Array(2,4,3,1);

$arr1=Array(2,8,5,6);

$merg_arr = array_merge($arr,$arr1);

for ($i=0;$i<count($merg_arr);$i++)

{

echo $merg_arr[$i];

echo " ";

}

?>

10) foreach ( имя_массива as
переменная_с_индексом =>переменная_со_значением );

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

Пример: Результат:

<?php

$arr=Array(2,4,3,1);

foreach($arr as $i=>$item)

{

echo"индекс - $i ";

echo"элемент - $item<br>";

}

?>

 

Булев тип (Boolean)

Тип данных который включает в себя всего два значения
Правда и неправда. True и False. Используется в основном в условиях.
к примеру выражение ($a > $b) может быть правдой или не правдой.

Интерпретатор РНР автоматически определяет тип переменной на основании анализа ее содержимого.

Помните, что в РНР нельзя для сложения строковых переменных использовать символ "+" он пригоден лишь для числовых выражений. Поэтому необходимо помещать переменные в строки или использовать команду конкатенации (точку): $с = $а. $b.



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2016-02-16 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: