- •1.Становление информатики как науки и структура современной информатики.
- •2.Понятие информации (определение, её свойства и методы измерения её количества).
- •17.Основы синтаксиса php начального уровня: имена переменных, комментарии. Разделение строк, взаимодействие с кодом html.
- •19.Классификация данных в php и диапазон их значений.
- •20.Понятие выражения и правила определения типа выражения в php.
- •21.Классификация операторов php, порядок их выполнения.
- •2.1. Классификация операторов php и порядок их выполнения
- •23.Операторы управления ходом выполнения сценария на php.
- •24.Циклы в языках программирования: назначение и использования. Операторы цикла в php.
- •2.2.9. Операторы цикла
- •2.2.9.1. Простейший оператор цикла – цикл с предусловием - оператор while
- •2.2.9.2. Цикл с постусловием - оператор do while
- •2.2.9.3. Циклы for
- •1. For (выражение1; выражение2; выражение3) {блок_выполнения}
- •2. For (начальное_выражение; условное_выражение; заключительное _выражение) {блок_выполнения}
- •2.2.9.4. Частные случаи использования цикла for в php
- •2.2.9.5. Об альтернативном синтаксисе операторов цикла
- •3.2. Создание массивов и особенности их использования в php
20.Понятие выражения и правила определения типа выражения в php.
Выражения - это краеугольный камень PHP. Почти все, что вы пишите в PHP, является выражением. Под выражением в PHP понимается то, что имеет значение. И обратно: если что-то имеет значение, то это "что-то" и есть выражение. Выражения являются "кирпичиками", из которых состоят PHP-программы. Главное в осмыслении понятия – выражения «держат» значения.
Основными (базовыми) формами выражений являются константы и переменные. Но они должны каким-либо способом обрабатываться в программе. Способы обработки задаются операторами. Простейшим из них является оператор присваивания. Например, если вы записываете:
$a = 100
вы присваиваете '100' переменной $a.
В приведенном примере $a - это переменная, знак «=» - это оператор присваивания, а 100 - выражение. Его значение 100.
Выражением может быть и переменная, если ей сопоставлено определенное значение:
$x = 7; $y = $x;
В первой строке рассмотренного примера выражением является константа 7, а во второй строке - переменная $x, т.к. ранее ей было присвоено значение 7. $y = $x также является выражением.
Немного более сложными примерами выражений являются функции. Например, рассмотрим следующую функцию:
Ясно, что запись $x = funct() абсолютно эквивалента записи $x = 5.
Функции - это выражения, значением которых является то, что возвращает функция. Поскольку funct() возвращает 5, значением выражения 'funct()' является 5. Как правило, функции возвращают не статическое значение, а вычисленное.
PHP поддерживает три типа скалярных значений: целочисленные, с плавающей точкой и строковые значения (скалярными являются значения, которые вы не можете 'разбить' на меньшие части, в отличие, например, от массивов). PHP поддерживает также два комбинированных (не скалярных) типа: массивы и объекты. Каждый из этих типов значений может присваиваться переменной или возвращаться функцией, и, следовательно, являться выражениями.
PHP - это язык, ориентированный на выражения и рассматривающий почти все как выражение. Вернемся к выражению: $x = 7. Легко заметить, что здесь присутствуют два значения - значение целочисленной константы '7' и значение переменной $x, также принимающей значение 7. Но на самом деле здесь присутствует и еще одно значение - значение самого присвоения. Само присвоение вычисляется в присвоенное значение, в данном случае - в 7. На практике это означает, что $x = 7 независимо оттого, что оно делает, является выражением со значением 7. Таким образом, запись $y = ($x = 7) равносильна записи $x = 7; $y = 7; (точка с запятой обозначает конец выражения). Поскольку операции присвоения анализируются справа налево, вы также можете написать '$y = $x = 7'.
Обобщая понятия выражения в PHP, можно сформулировать следующее определение:
Выражением называется совокупность выражений (операндов), соединённых математическими операндами (знаками операций): арифметическими, логическими. Базовыми (элементарными) выражениями являются строки, константы и переменные. Имя функции также является выражением (операндом).
Логические выражения
Логические выражения — это выражения, у которых могут быть только два значения: ложь и истина (или, что почти то же самое, 0 и 1).
Строковые выражения
Строки в PHP — одни из самых основных объектов. Они могут содержать текст вместе с символами форматирования или даже бинарные данные.
В предыдущих разделах мы выяснили, что переменные, строки, константы входят в выражения различным образом, но главное как операнды, соединяемые знаками арифметических и логических операторов, и формируя тип выражения. Вопрос - как определяется тип выражения, если в него входят разные типы.
Приведём некоторые правила PHP, определяющие тип результата выражений:
1. PHP не требует (и не поддерживает) явного определения типа при объявлении переменной; тип переменной определяется по контексту, в котором она используется. То есть, если вы присвоите строковое значение переменной $var, $var станет строкой. Если вы затем присвоите $var целочисленное значение, она станет целым числом.
2. Примером автоматического преобразования типа является оператор сложения '+'. Если любой из операндов является числом с плавающей точкой, то все операнды интерпретируются как числа с плавающей точкой, результатом будет также число с плавающей точкой. В противном случае операнды будут интерпретироваться как целые числа, и результат также будет целочисленным. Обратите внимание, что это НЕ МЕНЯЕТ типы самих операндов; меняется только то, как они вычисляются.
<?php
$foo = "0"; // $foo это строка (ASCII 48)
$foo += 2; // $foo теперь целое число (2)
$foo = $foo + 1.3; // $foo теперь число с плавающей точкой (3.3)
$foo = 5 + "10 Little Piggies"; // $foo это целое число (15)
$foo = 5 + "10 Small Pigs"; // $foo это целое число (15)
?>
3. В PHP (как в языках C, С++, C#) возможно принудительное приведение типов. Для этого имя требуемого типа записывается в круглых скобках перед приводимой переменной.
<?php
$foo = 10; // $foo это целое число
$bar = (boolean) $foo; // $bar это булев тип
?>
Допускаются следующие приведения типов:
(int), (integer) - приведение к целому числу
(bool), (boolean) - приведение к булеву типу
(float), (double), (real) - приведение к числу с плавающей точкой (float)
(string) - приведение к строке
(array) - приведение к массиву
(object) - приведение к объекту
Внутри скобок допускаются пробелы и символы табуляции, поэтому следующее равносильно по своему действию:
<?php
$foo = (int) $bar;
$foo = ( int ) $bar;
?>