т. е. выводит на экран данные.
Стр 1 из 3Следующая ⇒ Path – include_ path Once – include_ once ТЕМА 5. Работа с числами Арифметические функции Таблица
Пример: echo 21 % 6; На выходе будет –? 3? ________________________________________________ Операторы инкремента и декремента Пример: $number++; ++$namber; Положение оператора определяет момент, когда будет производится действие. Пример: $countdown = 5; echo -- $countdown; (сначала вычитается 1, а затем выводится на экран) echo $countdown--; (сначала выводится на экран, а затем вычитается 1) Комбинированные операторы Для сокращения кода используются комбинированные операторы Таблица комбинированных операторов
_____________________________________________________ Приоритет операторов Не очевидный приоритет операций находится в таблице www.php.net/manual/en/language. operators.php. ______________________________________________________ Числовые типы данных Так как тип данных в программе устанавливает интерпретатор РНР и числовых в частности, то для того чтобы выяснить тип конкретного значения используются функции: is_float или is_int. Пример: If (is_int($number)) { echo “$number целое”; } elce { echo “$number не целое”; } Пример: $number = “6”; $number++; echo ‘$number имеет тип’. gettype($number); В результате инкрементирования на выходе получаем целое число. Значение NULL Значение NULL – это тип данных и одновременно значение, которое указывает на отсутствие значения. Оно не имеет числового значения, но в операциях сравнения соответствует нулю:
Пример $number = 0; $empty = NULL; if ($number == $empty) { echo “Значения эквивалентны”; }
Функции для работы с числами Округление чисел Таблица. Функции округления десятичного числа до целого
* Функция round имеет необязательный параметр точности, который позволяет округлять с любым количеством знаков после запятой. Пример: $score = 0.535; echo round ($score, 2); На выходе получим – 0.54 _____________________________ Отрицательное значение параметра точности позволяет округлять целые числа. Пример: $distance = 45327; echo round ($distance, -2); На выходе получим – 45300 _____________________________ Сравнение Функции поиска максимума и минимума max и min соответственно. На входе набор аргументов (переменные или числа) на выходе минимальное или максимальное значение. Пример: echo max($a, $b); Ограничения на количество сравниваемых чисел (переменных) нет! ______________________________ Случайные числа Функция rand (min, max) генерирует случайные числа На входе можно задать два не обязательных аргумента, которые задают диапазон, в котором нужно генерировать случайные числа. Для более корректной работы функции rand, при повторном ее запуске целесообразно запустить функцию srand Тогда в получаемой последовательности первое значение ряда будет так же числом случайным. Дополнительные функции случайных чисел mt_rand и mt_srand
________________________________ Математические функции · Тригонометрия · Логарифмы · Перевод числа из одной системы счисления в другую. Обычно эти функции редко используются в Web-приложениях. __________________________________________ Полный список встроенных математических функций размещен в Интернете по адресу: www.php.net/manual/en/language.operators.php Тема 6. Обработка строк Характеристики строки Строка – это набор символов, которые рассматриваются как один объект. В РНР строки заключаются в кавычки двойные или одинарные. Пример двух одинаковых строк: $phrase = “ РНР – язык динамических Web-страниц! ”; $phrase = ‘ РНР – язык динамических Web-страниц! ’; ______________________________________ Вывод на экран специальных символов с помощью обратной косой черты Для использования кавычек по своему основному назначению (для выделения цитат и прямой речи) необходимо поставить перед ней обратную косую черту. Пример: $phrase1 = ‘\’Как дела \’, - сказал Вася. ‘; $phrase2 = ‘\’Хорошо \’, - сказал я. ‘; Напоминание: двойные кавычки заменяют знак $ и имя переменной на значение этой переменной. Для использования знака доллара (в его основном значении) внутри двойных кавычек необходимо перед ним поставит обратную косую черту. Пример: $offer = ‘Сэкономьте $10 на втором заказе’; $offer = “Cэкономьте \$10 на втором заказе”; ____________________________ Символ обратной косой черты можно использовать в строке с двойными кавычками для вставки специальных символов. Трехзначное число после обратной косой черты соответствует ASCII-символу в восьмеричном формате. ________________________________ Комбинация символов с обратной косой чертой используется так же для вставки непечатных ASCII-cимволов: · символ новый строки – \n, · символ табуляции – \t · и т. п. Полный список ASCII-cимволов можно скачать по адресу www.ascii.cl.
_____________________________________________ Конкатенация Оператор конкатенация – символ точки (.) Существует комбинированная версия этого оператора (.=), которая позволяет добавить значение к окончанию данной строки. Пример: $phrase = “Я хочу ”; $phrase.= “изменить ”; $phrase.= “мир! ”; echo $phrase; Результат на экране: Я хочу изменить мир! ______________________________________________ Сравнение строк Строки сравниваются с помощью стандартных операций сравнения.
При сравнении строк оператор выполняет зависимую от регистра проверку. Знак = = определяет равенство двух строк. Пример: $password = “Пароль”; If ($password = = “пароль”) { echo “Вы угадали пароль!”; { Else { echo “Пароль не правильный”;} … _______________________________ Другие операторы сравнения <, <=, >, >= выполняют сравнение на основе ASCII-значения каждого символа. Пример разделения фамилий на две группы. В первую группу входят фамилии начинающиеся с A до N, а во второй группе все остальные фамилии: If ($last_name <= “N”) {echo “Вы в первой группе ”;} Else { echo “Вы во второй группе ”;} … Напоминание: Значения символов от a – z лежат в диапазоне 97-122, а символы A – Z занимают диапазон 65 – 90. Форматирование строк Функции форматирования строк: · printf · sprintf ______________________________________ Функция printf Функция printf в самом простом виде выполняет те же функции что функция echo т. е. выводит на экран данные. Синтаксис использования функции printf: Пример: printf (“Он построил машину времени”); Пример: ptintf (“Стоимость %s равна %f “, $car_time, $price) Как известно в любой функции в скобках помещаются параметры через запятую. Вводим новое понятие – спецификатор формата, который состоит из знака % и форматирующего символа. В первом параметре вставляются спецификаторы формата. Механизм работы следующий: При выводе информации вместо спецификатора формата подставляется второй и последующие параметры Функция printf не имеет ограничений на количество заменяющих значений. Важно, чтобы количество спецификаторов формата и заменяемых значений совпадало. Таблица форматирующих символов printf
Форматирующие коды С помощью спецификаторов формата можно установить · выравнивание,
· ширину · точность выводимого значения Спецификатор ширины указывает, сколько символов отводится в строке на вывод форматируемого значения. Спецификатор устанавливается между знаком процента и спецификатором типа Пример: $name1 = “Мерседес”; $name2 = “BMW”; $name3 = “Мицубиси”; echo “<pre>”; printf (“%10s \n”, $name1); printf (“%10s \n”, $name2); printf (“%10s \n”, $name3); echo “ </pre>”; … По умолчанию выравнивание идет справа на заданную ширину. На выходе получим: Мерседес BMW Мицубиси ______________________ Знак минус производит выравнивание по левому краю %-10s Пример: $name1 = “Мерседес”; $name2 = “BMW”; $name3 = “Мицубиси”; echo “<pre>”; printf (“%-10s \n”, $name1); printf (“%-10s \n”, $name2); printf (“%-10s \n”, $name3); echo “ </pre>”; … На выходе получим: Мерседес BMW Мицубиси ______________________ Спецификатор точности используется для чисел с плавающей точкой, чтобы задать количество символов после точки. Спецификатор точности следует через точку после необязательного спецификатора ширины. Пример: вывод стоимости $price = 6; printf (“Цена: %.2f”, $price); На экране получим: Цена: 6.00 ___________________________________ Пример заполнения нулями незначащих цифр при выводе числа: $order = 201; printf (“Номер заказа: %’05d”, $order); На выходе получим: Номер заказа: 00201 ____________________________________ Возможности функции sprintf Функция sprintf используется для того, чтобы присвоить форматируемую строку переменной 6.3. Строковые функции 6.3.1. Переключение регистра
Возможно использовать сочетание функций переключения регистра. Пример 1: $phrase = “ I love PHP”; echo strtoupper ($phrase). “<br>”; echo strtolower ($phrase). “<br>”; На выходе получается: I LOVE PHP I love php ________________________________________________ Пример 2: $phrase = “welcome to the jungle”; echo ucfirst($phrase); На выходе получается: Welcome to the jungle __________________________________________________ Пример 3: $phrase = “ bill gats ”; echo ucwords($phrase)”; На выходе получается: Bill Gats 6.3.2. Разбивка строки
* Счет позиции начинается с 0
ФУНКЦИЯ substr ($ m, n, x ) Пример 1: $phrase = “ Он знает РНР ”; echo substr ($phrase, 4, 6); На выходе получаем: нает Р Пробелы учитываются как символ. ______________________________ Если не указать длину, возвращается подстрока от заданной позиции x до конца строки. $phrase = “Он знает РНР ”; echo substr ($phrase, 2); На выходе получаем: знает РНР ______________________________ Если строковая позиция – отрицательное число, то функция substr начинает отсчет строки с конца строки. $phrase = “ Он знает РНР ”; echo substr ($phrase, -3); На выходе получаем: РНР ____________________________________________ ФУНКЦИЯ strlen ($m) Пример (определяем длину строки): $phrase = “ Он знает РНР ”; echo strlen($phrase); На выходе получаем: 11 ________________________________________________ ФУНКЦИЯ strpos($ m, “n” ) Пример (поиск позиции символа или набора символов в строке): $email = ” student@sut.ru ”; echo strpos ($email, “@”); На выходе получаем: 7 Позиция символа в строке отсчитывается с левого края и начинается с нуля (т. е. позиция 1 соответствует второму символу в строке). Если искомой комбинации символов нет в строке, то на выходе получаем FALSE (имеющее значение – ноль). Для определения различия двух случаев когда первый символ в строке совпадает с искомым (т. е. возвращается значение – 0)) и случаем когда, не найден искомый символ и возвращается значение FALSE (т. е. тоже значение – 0) необходимо определить тип переменной – Условие: strpos ($a, $b) = = = 0 будет истинным только в том случае, когда $b содержится в $a, начиная с нулевой позиции. _____________________________________________________ ФУНКЦИЯ strstr($m, “n”) Пример (извлечения части строки от совпадающей позиции и до конца строки): $email = student@sut.ru; $domain = $strstr ($email, “@”); ____________________________________________________________ Полный список строковых функций размещен по адресу: www.php.net/manual/en/ref.strings.php. ТЕМА 7. Работа с массивами
7.1. Определение и способы работы с массивами Массив – это тип переменной, которая позволяет сохранить и пронумеровать набор значений. · Создание · Чтение значения элемента · Присвоение значения элементу 7.1.1. Создание массива и доступ к нему понятия: индекс (или ключ) $temps = array (38, 40, 57, 21); _______________________________________________ Обращение к элементу массива Для обращения к элементу массива, необходимо после имени указать индекс в квадратных скобках. Пример чтения значения элемента массива: echo $temps [ 2 ]; На выходе будет:? 57 Индекс первого элемента массива равен нулю. ______________________________________________ Для присвоения значения элементу используются квадратные скобки [ ] $temps [ 10 ] = 56; Присвоение значения элементам массива без указания индекса: $temps [ ] = 56; $temps [ ] = 73; $temps [ ] = 12; $temps [ ] = 121; Запись выше эквивалентна записи: $temps [ 0 ] = 56; $temps [ 1 ] = 73; $temps [ 2 ] = 12; $temps [ 3 ] = 121; _______________________________________ Инициализация массива (запись пустых значений в массив) $ temps = array(); 7.1.2 Вывод содержимого массива Функция рекурсивного вывода всех значений переменных массива – print_r Пример: $ temps = array (38, 40, 49, 21); print “<pre>”; print_r ($temps); print “< /pre >; На экране получаем: [ 0 ] => 38 [ 1 ] => 40 [ 2 ] => 49 [ 3 ] => 21 Функция – print_r часто используется при отладке программы. _________________________________________ 7.1.3. Форматирование при выводе значений массива $temps = array (38, 40, 49, 21); while (list ($key, $value) = each ($temps)) { echo “ Ключ $key имеет значение $value <br>”; } Все индексы: массива сохраняются в переменной $ key, а значения – в $ value. На экране получаем: Ключ 0 имеет значение 38 Ключ 1 имеет значение 40 Ключ 2 имеет значение 49 Ключ 3 имеет значение 21 ___________________________________________________ Специальная функция вывода значений массива – foreach Пример: foreach ($temps as $key => $value) { … } _______________________________________ Для вывода значений массива не рекомендуется использовать цикл for вводя значения индекса 0, 1, 2, и т. д., так как индекс может быть строковой переменной. 7.1.4. Ассоциативный массив Ассоциативный массив позволяет использовать для индексов строковые переменные. Определение ассоциативного массива: $ temps = array (“ a ” => 38, “ b ” => 40, “ c ” => 49, “ d ” => 21); Присвоение значения элементу ассоциативного массива: Пример: $temps [“ a “] = 38; echo $temps [“ a “]; Вывод значений ассоциативного массива: Пример: print_r ($temps); В результате выводится на экран: [ a ] => 38 [ b ] => 40 [ c ] => 49 [ d ] => 21 7.2. Основные функции для работы с массивами 7.2.1. Сортировка Функции сортировки упорядочивают все элементы массива по значению или но индексу. название массива Функция для сортировки данных – sort (…) Таблица
Пример: $ temps = array (38, 40, 49, 21); sort ($ temps); print “<pre>”; print_r ($temps); print “< /pre >; На экране получаем: [ 0 ] => 21 [ 1 ] => 38 [ 2 ] => 40 [ 3 ] => 49 Функции сортировки возвращают только значение, свидетельствующее об удачном или неудачном выполнении операции. ___________________________________________________________ 7.2.2. Перестановка элементов массива случайным образом Функция shuffle Пример: shuffle ($ temps); 7.2.3. Функции для работы с множествами Таблица
Пример суммирования массивов: $ union = array_merge($array1, $array2, $array3); Пример нахождение пересечения двух массивов: $ intersect = array_intersect ($array1, array2); Пример нахождение разницы двух массивов: $ intersect = array_diff ($array1, array2); 7.2.4. Функции работы внутри массива Таблица
Пример нахождения количества элементов в массиве: $ temps = array (38, 40, 49, 21); echo count ($temps); На экране получаем: 4 _________________________________________________ Пример нахождения значения в массиве: $languages [ 0 ] = “Perl”; $languages [ 1 ] = “C++”; $languages [ 2 ] = “PHP”; $languages [ 3 ] = “Fortran”; If (in_array (“PHP”, $languages)) { … } _____________________________________________________ Пример нахождения индекса в массиве: $temps [ “oct” ] => 8; $temps [ “nov” ] => 0; $temps [ “dec” ] => -12; If (array_key_exists (“dec”, $temps)) { … } _________________________________________ 7.2.5. Преобразование массива в другие форматы
7.3. Многомерный массив Определение многомерного массива $salary = array ( 2005 => array (“jan” => 1000, “feb” => 1200, “mar” => 1350), 2006 => array (“jan” => 1400, “feb” => 1200, “mar” => 1450), 2007 => array (“jan” => 1500, “feb” => 1340, “mar” => 2010), ); _______________________________________________________ Присвоение значения одному элемента многомерного массива: $salary [2005] [“feb”] = 1250; _______________________________________________________ Функция – print_r позволяет выводить все уровни, из которых состоит массив. Пример: print_r ($salary); __________________________________________________________ Полный список функций работы с массивами размещен по адресу: www.php.net/ref.array. ТЕМА 8. Регулярные выражения Решаемые задачи: · проверка строк, · сложный поиск с заменой. ____________________________________________ Определение: Регулярные выражения – комбинация символов _____________________________________________ РНР поддерживает два типа регулярных выражений: POSIX-синтаксис;
Воспользуйтесь поиском по сайту: ©2015 - 2024 megalektsii.ru Все авторские права принадлежат авторам лекционных материалов. Обратная связь с нами...
|