ArtEngineArtEngine
Главная | Регистрация | Статистика | Расширенный поиск | Новое на сайте  

Меню

Аккаунт

Реклама

 
Реклама
 
 

Переменные
 
Учебник РНР
Назад Вперёд

Глава 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();    // неправильно
?>

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


 

Опрос

Друзья

Реклама

  2007 © PHP-Book
Designed by PHP-Book.Net