Синтаксис языка и операторы
Синтаксис языка и операторы
Выражения
if
Позволяет организовывать выполнение фрагментов кода по условию.
Синтаксис :
if (выражение) statement
Может иметь неограниченную степень вложенности в другие IF.
if($a > $b) print "$a больше $b";
<?php
if($a > $b) {
echo "$a больше $b;
$b=$a;
}
?>
else
Расширяет возможности IF по части обработки вариантов выражения, когда оно равно FALSE.
Выражение ELSE выполняется только если IF равно FALSE.
if($a>$b) {
echo "a больше b";
} else {
echo "a меньше b";
}
elseif
Является комбинацией IF и ELSE. Позволяет выполнить выражение, если значение IF равно FALSE, но в отличии от ELSE оно выполниться, если выражение ELSEIF равно TRUE.
if ($a > $b) {
echo "a больше b";
} elseif ($a == $b) {
echo "a равно b";
} else {
echo "a меньше b";
}
if ... endif
Один из возможных вариантов группирования операторов с оператором IF.
Удобно при внедрении больших блоков HTML-кода внутрь оператора IF.
if ($a == 1):
echo "a равно 1";
elseif ($a == 2):
echo "a равно 2";
else:
echo "а не равно 1 и 2";
endif;
<?php if ($a==5):?>A=5<?php endif;?>
Блок HTML-кода A=5 будет виден, если выполнется условие $a==5
while
Простейший тип цикла в PHP. Заставляет PHP выполнять вложенные операторы до тех пор, пока условие равно TRUE. Если условие равно FALSE с самого начала, то цикл не выполнится не разу.
Синтаксис:
WHILE(условие)выражения
Можно сгруппировать несколько операторов внутри фигурных скобок или использовать альтернативный синтаксис :WHILE(условие)выражения... ENDWHILE;
<?php
$a=1;
while ($a <= 5) {
echo $a++;
}
?>
<?php
$a = 1;
while($a <= 5):
echo $a;
$a++;
endwhile;
?>
- Эти два примера выводят номера с 1 до 5.
do_while
Цикл, аналогичный WHILE, но значение логического выражения проверяется не до, а после окончания итерации. Основное отличие - то что цикл хоть один раз но выполнится.
<?php
$a = 1;
do {
echo $a;
} while ($a > 1);
?>
Можно прекратить использовать блок операторов в середине путем внедрения оператора BREAK в цикл DO..WHILE(0) :
<?php
do {
if ($a == 5) {
echo "A равно 5"
break;
}
$a *= $b;
if ($a < $minimum) {
break;
}
echo "A равен $a";
} while(0);
?>
for
Наиболее мощный цикл в PHP.
Синтаксис:
FOR (условие1; условие2; условие3)выражения
(условие2 - Проверяется в начале каждой итерации. Если оно равно TRUE, то цикл продолжается и выполняются вложенные операторы. Если оно равно FALSE, то цикл заканчивается.(условие3 - Выполняется (вычисляется) в конце каждой итерации.
Каждое из этих условий может быть пустым.
Пример1:
for ($a = 1; $a <= 5; $a++) {
echo $a;
}
Пример 2:
for ($a = 1;;$a++) {
if ($a > 5) {
break;
}
echo $a;
}
Пример 3:
$a = 1;
for (;;) {
if ($a > 5) {
break;
}
print $a;
$a++;
}
Пример 4:
for ($a = 1; $a <= 5; print $a, $a++);
PHP поддерживает альтернативный синтаксис FOR:
FOR(усл1; уcл2; усл3;):операторы;...;ENDFOR;
break
Прерывает выполнение текущего цикла.
Пример:
$a = 0;
while ($a < 5) {
if ($arr[$a] == "stop") {
break;
}
$a++;
}
continue
Переходит на начало ближайшего цикла.
<?php
while (list($key,$value) = each($arr)) {
if ($key % 2) {
continue;
}
do_something_odd ($value);
}
?>
switch
Сравнивает переменную или выражение с различными значениями и выполняет различные фрагменты кода в зависимости от того, чему будет равно значение выражения.
<?php
switch ($a) {
case 0:
echo "A равно 0";
break;
case 1:
echo "A равно 1";
break;
case 2:
echo "A равно 2";
break;
default:
echo "A не равно 0, 1, 2";
}
?>
require
Заменяет себя содержимым указанного файла.
Пример:
require("include.inc");
Но его нельзя поместить внутрь цикла и ожидать, что он включит содержимое другого файла несколько раз в процессе каждой итерации. Для этого есть INCLUDE.
include
Вставляет и выполняет содержимое указанного файла.
<?php
$files = array ("first.inc", "second.inc", "third.inc");
for ($a = 0; $a < count($files); $a++) {
include($files[$a]);
}
?>
Так как INCLUDE() это специальный оператор, требуется заключать его в фигурные скобки при использовании внутри условного оператора.
<?php
if ($a < 5) {
include("file_1.inc");
} else {
include("file_2.inc");
}
?>
function
Объявление функции.
Внутри функции может быть любой верный код PHP, даже объявление другой функции или класса. Функции должны быть объявлены перед тем, как на них ссылаться.
<?php
function foo ($arg_1, $arg_2, ..., $arg_n) {
echo "Пример функции.";
return $retvalue;
}
?>
Возвращение результатов:
<?php
function my_sqrt ($num) {
return $num * $num;
}
echo my_sqrt(4); //выведет 16
?>
Множественные результаты не могут быть возвращены в качестве результата, но вы можете реализовать это путем возврата списка:
function foo() {
return array (0, 1, 2);
}
list ($zero, $one, $two) = foo();
Аргументы:
Информация может быть передана функции через список аргументов, которые являются разделенным запятыми списком переменных и/или констант.
Списки аргументов переменной длины не поддерживаются, но того же можно достичь, передавая массивы.
function takes_array($input) {
echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}
Передача по ссылке:
По умолчанию, аргументы функции передаются по значению. Для изменения аргументов в функции их надо передавать по ссылке.Для этого надо поставить амперсанд (&) перед именем аргумента в объявлении функции:
function foo( &$bar) {
$bar .= "и добавочная строка.";
}
$str = "Это строка, ";
foo($str);
echo $str; // выведет : "Это строка, и добавочная строка."
function foo($bar) {
$bar .= "и добавочная строка.";
}
$str = "Это строка, ";
foo($str);
echo $str; //выведет : "Это строка, "
foo(&$str);
echo $str; //выведет : "Это строка, и добавочная строка."
Значения по умолчанию:
Значение по умолчанию должно быть константой, а не переменной или членом класса.
function day ($type = "понедельник") {
echo "Сегодня $type.";
}
echo day(); //выведет : Сегодня понедельник.
echo day("вторник"); //выведет : Сегодня вторник.
Аргументы по умолчанию при описании должны находиться справо от остальных аргументов.
function day($day_num, $type = "понедельник") {
return "Сегодня $day_num - $type.";
}
old_function
Оператор OLD_FUNCTION позволяет вам определяить функцию используя синтаксис PHP/FI2 (за исключением того, что вы должны заменить "function" на "old_function").
Это свойство только для совместимости и должно использоваться лишь конверторами PHP/FI2 - PHP3. Описанные таким образом функции не могут быть вызваны из служебного кода PHP. Вы можете обойти это путем введения специальной функции в терминах PHP3, которая будет вызывать OLD_FUNCTION.
class
Набор переменных и функций, работающих с этими переменными.
<?php
class Cart {
var $items; // Количество вещей в корзине покупателя
// Добавить $num наименований типа $artnr в корзину
function add_item ($artnr, $num) {
$this->items[$artnr] += $num;
}
// Убрать $num наименований $artnr из корзины
function remove_item ($artnr, $num) {
if ($this->items[$artnr] > $num) {
$this->items[$artnr] -= $num;
return true;
} else {
return false;
}
}
}
?>
Классы это типы, то есть, заготовки для реальных переменных. Вы должны создавать переменные желаемого типа, используя оператор new:
$cart = new Cart;
$cart->add_item("10", 1);
Классы могут быть расширениями других классов. Расширенный класс обладает всеми переменными и функциями базового класса и тем, что вы определите при расширении класса. Это делается используя ключевое слово extends :
class Named_Cart extends Cart {
var $owner;
function set_owner ($name) {
$this->owner = $name;
}
}
Это определяет класс Named_Cart, который имеет все переменные и функции класса Cart плюс дополнительную переменную $owner и дополнительную функцию set_owner(). Вы можете создать поименованую корзину обычным образом и установить или получить владельца корзины. Также вы можете использовать и нормальные функции корзины в поименованой корзине :
$ncart = new Named_Cart; //Создать корзину
$ncart->set_owner ("kris");//Указать владельцаprint
$ncart->owner; //Распечатать имя владельца корзины
$ncart->add_item ("10", 1);//унаследовано из обычной корзины
Более 800 000 книг и аудиокниг! 📚
Получи 2 месяца Литрес Подписки в подарок и наслаждайся неограниченным чтением
ПОЛУЧИТЬ ПОДАРОКЧитайте также
7.2. Синтаксис CSS
7.2. Синтаксис CSS Теперь, когда вы имеете представление о том, как можно добавить таблицу стилей в HTML-документ, разберем синтаксис языка
Операторы отношения и логические операторы
Операторы отношения и логические операторы Операторы отношения используются для сравнения значений двух переменных. Эти операторы, описанные в табл. П2.11, могут возвращать только логические значения true или false.Таблица П2.11. Операторы отношения Оператор Условие, при
Синтаксис языка Bourne shell
Синтаксис языка Bourne shell Любой из стандартных командных интерпретаторов имеет развитый язык программирования, позволяющий создавать командные файлы, или скрипты, для выполнения достаточно сложных задач. Следует, однако, иметь в виду, что shell является интерпретатором, он
3. Операторы языка Pascal
3. Операторы языка Pascal Условный операторФормат полного условного оператора определяется следующим образом: If В then SI else S2; где В – условие разветвления (принятия решения), логическое выражение или отношение; SI, S2 – один выполняемый оператор, простой или составной.При
Глава 3 Операторы и функции языка SQL
Глава 3 Операторы и функции языка SQL В этой главе вы познакомитесь с функциями и операторами, с помощью которых можно создавать выражения – формулы, вычисляющие какое-либо значение (числовое, логическое, символьное и др.). Наиболее часто выражения используются в
Синтаксис
Синтаксис Синтаксис функции EXTRACT():EXTRACT (элемент FROM поле)элемент должен быть одним из допустимых элементов в типе данных поле. Не все элементы допустимы для всех типов данных дата/время. Тип данных элемента изменяется в соответствии с выделяемым элементом. Табл. 10.10
Синтаксис
Синтаксис Если, будучи соединенным с базой данных, вы захотите ее удалить, используйте для этого оператор:DROP DATABASE;После удаления база данных не может быть восстановлена, следовательно:* будьте уверены, что вы действительно хотите, чтобы она была потеряна навсегда;*
Синтаксис
Синтаксис Для всех версий Firebird синтаксис CREATE TRIGGER одинаков:CREATE TRIGGER имя FOR {таблица | просмотр}[ACTIVE | INACTIVE]{BEFORE | AFTER} {DELETE | INSERT | UPDATE}[POSITION число]AS <тело-триггера> ^<тело-триггера> = [<список-объявления-переменных>] <блок><список-объявления-переменных> = DECLARE VARIABLE
10.2.2. Синтаксис команд
10.2.2. Синтаксис команд Общий синтаксис команд редактора sed таков:[адрес1 [, адрес2] ] [ ! ] команда [аргументы]Команда состоит из одной буквы или одного символа (Список основных команд представлен ниже). Аргументы требуются лишь нескольким командам, в частности, команде s.
5. Операторы языка Pascal
5. Операторы языка Pascal Условный операторФормат полного условного оператора определяется следующим образом:If B then S1 else S2где B – условие разветвления (принятия решения), логическое выражение или отношение; S1, S2 – один выполняемый оператор, простой или составной.При