- •Обработка динмачиской html страницы
- •Назначение и виды веб серверов
- •Способы встраивания php скрипта в html код
- •Переменные и константы в php. Область определения переменных
- •Область видимости переменных
- •Переменные переменные
- •Константы
- •5. Особенности синтаксиса php
- •6. Глобальные и статические переменные php Глобальные переменные в php
- •Статические переменные в php
- •7. Система типов языка php
- •8. Вывод данных в php
- •Арифметические операторы php
- •Логические операторы php
- •Строковые операторы php
- •Операторы присвоения в php
- •Операторы сравнения в php
- •Операторы инкремента и декремента в php
- •Операторы эквивалентности php
- •Операции с символьными переменными в php
- •Приоритеты выполнения операторов в php
- •Операторы исполнения внешних команд в php
- •Операторы для работы с массивами php
- •Операторы управления ошибками php
- •Операторы классов php
- •Поиск и замена подстрок
- •Регулярные выражения
- •Жадные и ленивые квантификаторы в регулярных выражениях
- •Использование html-форм для передачи данных на сервер
- •Для метода get
- •Для метода post
- •Замечание
- •Замечание
- •Замечание
- •Замечание
- •Замечание
- •Замечание
- •Типы ресурсов Предопределенные константы
- •Проверка существования файла
- •Функция file_exists
- •Функция is_writable
- •Функция is_readable
- •I. Открытие файла
- •II. Манипуляции с данными файла
- •III. Закрытие файла
- •Запись в файл
- •Чтение из файла
- •Взаимодействие php и MySql
- •Создание базы данных с помощью html-формы
- •Листинг 1. Код html-формы
- •Листинг 2. Код записывающей html-формы
Операции с символьными переменными в php
PHP следует соглашениям Perl (в отличие от С) касательно выполнения арифметических операций с символьными переменными. Например в Perl 'Z'+1 будет вычислено как 'AA', в то время как в C 'Z'+1 будет вычислено как '[' ( ord('Z') == 90, ord('[') == 91 ). Следует учесть, что к символьным переменным можно применять операцию инкремента, в то время как операцию декремента применять нельзя.
<?php $i = 'W'; for($n=0; $n<6; $n++) echo ++$i . "\n"; /* Результат работы будет следующий: X Y Z AA AB AC */ ?>
Приоритеты выполнения операторов в php
Приоритет операторов определяет, насколько "тесно" связанны между собой два выражения. Например, выражение1 + 5 * 3 вычисляется как 16, а не 18, поскольку операция умножения ("*") имеет более высокий приоритет, чем операция сложения ("+"). В случае, если операторы имеют одинаковый приоритет, они будут выполняться слева направо. Круглые скобки могут использоваться для принудительного указания необходимого порядка выполнения операторов. Например, выражение (1 + 5) * 3 вычисляется как 18.
В следующей таблице приведен список операторов, отсортированный по убыванию их приоритетов. Операторы, размещенные в одной строке имеют одинаковый приоритет и порядок их выполнения опроделяется исходя из ихассоциативности.
Операторы с более высоким уровнем приоритета выполняются в первую очередь:
Приоритет |
Оператор |
Порядок выполнения |
13 |
(постфикс)++ (постфикс)-- |
слева направо |
12 |
++(префикс) --(префикс) |
справа налево |
11 |
* / % |
слева направо |
10 |
+ - |
слева направо |
9 |
<< >> |
слева направо |
8 |
< <= > >= |
слева направо |
7 |
== != |
слева направо |
6 |
& |
слева направо |
5 |
^ |
слева направо |
4 |
| |
слева направо |
3 |
&& |
слева направо |
2 |
|| |
слева направо |
1 |
= += -= *= /= %= >>= <<== &= ^= |= |
справа налево |
Пример порядка выполнения операторов (ассоциативность):
<?php $a = 3 * 3 % 5; // (3 * 3) % 5 = 4 $a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2 $a = 1; $b = 2; $a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5 ?>
В любом случае, если вы сомневаетесь, или боитесь ошибиться, используйте круглые скобки. Это также позволит сделать ваш код более читабельным.
Операторы исполнения внешних команд в php
PHP поддерживает один оператор исполнения: обратные кавычки (``). Обратите внимание, что это не одиночные кавычки. PHP пытается выполнить строку, заключенную в обратные кавычки, как консольную команду, и возвращает полученный вывод (т.е. он не просто выдается на выходе а, например, может быть присвоен переменной). Использование обратных кавычек аналогично использованию функции shell_exec().
<?php $output = `ls -al`; echo "<pre>$output</pre>"; ?>
Примечание: обратные кавычки недоступны, в случае, если установлен безопасный режим или отключена функцияshell_exec().
