Выбрать главу

echo "Переменая с именем second " .

"равна $second";

// выводим значение $second

?>

Результат работы этого скрипта будет следующим:

Переменная с именем first равна New text

Переменная с именем second равна Text

PHP 4, кроме этого, предлагает еще один способ присвоения значений переменным: присвоение по ссылке. Для того чтобы присвоить значение переменной по ссылке, это значение должно иметь имя, т.е. оно должно быть представлено какой-либо переменной. Чтобы указать, что значение одной переменной присваивается другой переменной по ссылке, нужно перед именем первой переменной поставить знак амперсанд &.

Рассмотрим тот же пример, что и выше, только будем присваивать значение переменной first переменной second по ссылке:

<?php

$first = ' Text '; // Присваиваем $first

// значение ' Text '

$second = &$first;

/* Делаем ссылку на $first через $second.

Теперь значения этих переменных

будут всегда совпадать */

// Изменим значение $first

// на ' New text '

$first = ' New text ';

echo "Переменная с именем first " .

"равна $first <br>";

// выведем значения обеих переменных

echo "Переменная с именем second " .

"равна $second";

?>

Этот скрипт выведет следующее:

Переменная с именем first равна New text.

Переменная с именем second равна New text.

То есть вместе с переменной $first изменилась и переменная $second.

Константы

Для хранения постоянных величин, т.е. таких величин, значение которых не меняется в ходе выполнения скрипта, используются константы. Такими величинами могут быть математические константы, пароли, пути к файлам и т.п. Основное отличие константы от переменной состоит в том, что ей нельзя присвоить значение больше одного раза и ее значение нельзя аннулировать после ее объявления. Кроме того, у константы нет приставки в виде знака доллара и ее нельзя определить простым присваиванием значения. Как же тогда можно определить константу? Для этого существует специальная функция define(). Ее синтаксис таков:

define("Имя_константы",

"Значение_константы",

[Нечувствительность_к_регистру])

По умолчанию имена констант чувствительны к регистру. Для каждой константы это можно изменить, указав в качестве значения аргумента Нечувствительность_к_регистру значение True. Существует соглашение, по которому имена констант всегда пишутся в верхнем регистре.

Получить значение константы можно, указав ее имя. В отличие от переменных, не нужно предварять имя константы символом $. Кроме того, для получения значения константы можно использовать функцию constant() с именем константы в качестве параметра.

<?php

// определяем константу

// PASSWORD

define("PASSWORD","qwerty");

// определяем регистронезависимую

// константу PI со значением 3.14

define("PI","3.14", True);

// выведет значение константы PASSWORD,

// т.е. qwerty

echo (PASSWORD);

// тоже выведет qwerty

echo constant("PASSWORD");

echo (password);

/* выведет password и предупреждение,

поскольку мы ввели регистрозависимую

константу PASSWORD */

echo pi;

// выведет 3.14, поскольку константа PI

// регистронезависима по определению

?>

Кроме переменных, объявляемых пользователем, о которых мы только что рассказали, в PHP существует ряд констант, определяемых самим интерпретатором. Например, константа __FILE__ хранит имя файла программы (и путь к нему), которая выполняется в данный момент, __FUNCTION__ содержит имя функции, __CLASS__ – имя класса, PHP_VERSION – версия интерпретатора PHP. Полный список предопределенных констант можно получить, прочитав руководство по PHP.

Операторы

Операторы позволяют выполнять различные действия с переменными, константами и выражениями. Мы еще не упоминали о том, что такое выражение. Выражение можно определить как все, что угодно, что имеет значение. Переменные и константы – это основные и наиболее простые формы выражений. Существует множество операций (и соответствующих им операторов), которые можно производить с выражениями. Рассмотрим некоторые из них подробнее.

+

Сложение

$a + $b

-

Вычитание

$a - $b

*

Умножение

$a * $b

/

Деление

$a / $b

%

Остаток от деления

$a % $b

.

Конкатенация (сложение строк)

$c = $a . $b

(это строка, состоящая из $a и $b)

=

Присваивание

Переменной слева от оператора будет присвоено значение, полученное в результате выполнения каких-либо операций или переменной/константы с правой стороны

$a = ($b = 4) +5;

($a будет равна 9, $b будет равна 4)

+=

Сокращение. Прибавляет к переменной число и затем присваивает ей полученное значение

$a += 5;

(эквивалентно $a = $a + 5;)

.=

Сокращенно обозначает комбинацию операций конкатенации и присваивания (сначала добавляется строка, потом полученная строка записывается в переменную)

$b = "Привет ";

$b .= "всем";

В результате: $b="Привет всем"

and

И

$a и $b истинны (True)

$a and $b

&&

И

$a && $b

or

Или

Хотя бы одна из переменных $a или $b истинна (возможно, что и обе)

$a or $b

||

Или

$a || $b

xor

Исключающее или

Одна из переменных истинна. Случай, когда они обе истинны, исключается

$a xor $b

!

Инверсия (NOT)

Если $a=True, то !$a=False и наоборот

! $a

==

Равенство

Значения переменных равны

$a == $b

===

Эквивалентность

Равны значения и типы переменных

$a === $b

!=

Неравенство

Значения переменных не равны

$a != $b

<>

Неравенство

$a <> $b

!==

Неэквивалентность

Переменные не эквивалентны

$a !== $b

<

Меньше

$a < $b

>

Больше

$a > $b

<=

Меньше или равно