Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Язык программирования PHP(финал).docx
Скачиваний:
6
Добавлен:
27.08.2019
Размер:
158.86 Кб
Скачать

Переменные в РНР могут быть четырех типов:

Целое число ( 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” // Обратный слэш выполняет функцию экранирования.  ?>

Строка в одинарных кавычках не обрабатывает переменные, а выводит их имя со знаком доллара.

Строка в двойных кавычках Так же как и в одинарных, текст взятый в двойные кавычки это строка, но с большими возможностями для вывода.

Если строка определяется в двойных кавычках, либо при помощи 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 "Thats ok";

} ?>

  1. 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.

Изменить тип переменной можно несколькими функциями

intval() - возвращает аргумент в виде целого числа integer floatval() - возвращает аргумент в виде дробного числа float strval() - возвращает аргумент в виде строки string settype() - превращает первый аргумент в указанный во втором аргументе тип

settype($a,'integer') Превратит $a в целое число. Заметьте что эта функция не возвращает нового значения, а изменяет переданный ей параметр. Допустимыми значениями параметра type являются: "boolean" "integer" (или "int") "float" "string" "array" "null"