PHP-Nuke по-русски    Главная
Начальная
страница
 Клуб
Русский
клуб
 Разделы
Тематические
разделы
 Ссылки
Каталог
сайтов
 Файлы
Каталог
программ
 Школа
Практические
занятия
 Форум
Форумы
поддержки
Учебник РНР
Назад Вперёд

Глава 7. Переменные

Содержание
Основы
Предопределённые переменные
Область видимости переменной
Переменные переменные
Переменные вне PHP

Основы

Переменные в PHP представлены знаком dollar с последующим именем переменной. Имя переменной чувствительно к регистру символов.

Имена переменных следуют тем же правилам, что и другие метки в PHP. Правильное имя переменной начинается с буквы или символа подчёркивания, с последующими (в любом количестве) буквами, числами или символами подчёркивания. Это можно выразить в виде регулярного выражения:

'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'

Примечание: для наших целей здесь - буквы это a-z, A-Z и ASCII-символы от 127 до 255 (0x7f-0xff).

$var = "Bob";
$Var = "Joe";
echo "$var, $Var";      // выводит "Bob, Joe"

$4site = 'not yet';     // неправильно; начинается с числа
$_4site = 'not yet';    // правильно; начинается с символа подчёркивания/underscore
$täyte = 'mansikka';    // правильно; 'ä' это ASCII 228.

В PHP 3 переменные всегда присваиваются по значению. То есть, если вы присваиваете выражение переменной, всё значение оригинального выражения копируется в переменную назначения. Это означает, к примеру, что после присвоения одной переменной другой переменной, изменение одной из этих переменных не повлияет на другую. Дополнительно об этом виде присвоения см. раздел Выражения.

PHP 4 предлагает другой способ присвоения значений переменным: присвоение по ссылке. Это означает, что новая переменная просто ссылается на (иначе говоря, "становится псевдонимом" или "указывает на") оригинальную переменную. Изменения в новой переменной отражаются на оригинале, и наоборот. Это означает также, что никакого копирования не происходит; таким образом, присвоение происходит быстрее. Однако любое ускорение будет заметно только в длинных циклах или при присвоении больших массивов или объектов.

Для присвоения по ссылке просто присоедините амперсанд (&) к началу имени переменной (исходной переменной). Например, следующий фрагмент кода выводит 'My name is Bob' дважды:

<?php
$foo = 'Bob';              // присваивается 'Bob' переменной $foo
$bar = &$foo;              // ссылка на $foo через $bar
$bar = "My name is $bar";  // изменение $bar
echo $bar;
echo $foo;                 // $foo также изменилась
?>

Важно отметить, что по ссылке можно присвоить только именованные переменные.

<?php
$foo = 25;
$bar = &$foo;      // правильное присвоение
$bar = &(24 * 7);  // неверно; ссылка на неименованное выражение

function test()
{
   return 25;
}

$bar = &test();    // неправильно
?>

Назад Оглавление Вперёд
Трюки с типами ВверхПредопределённые переменные

© RigaNet - Internet studio
For Web site issues, contact the Web master.

Rambler's Top100 Рейтинг@Mail.ru RigaNet