Переменные — это «контейнеры», используемые для хранения информации:
<?php $х = 5 ; $y = 6 ; $ z = $x + $y ; $з ? >
х=5y=6z=x+y
В алгебре мы берём букву (например, x) и присваиваем ей значение (например, 5).
Из приведенного выше выражения z=x+y мы можем вычислить значение z, равное 11.
В PHP эти буквы называются переменными .
Переменные — это контейнеры, используемые для хранения данных. |
Подобно алгебре, переменным PHP можно присвоить значение (x=5) или выражение (z=x+y).
Переменные могут иметь очень короткие имена (например, x и y) или более описательные имена (например, age, carname, totalvolume).
Правила переменных PHP:
Переменные начинаются со знака $, за которым следует имя переменной.
Имена переменных должны начинаться с буквы или символа подчеркивания.
Имена переменных могут содержать только буквенно-цифровые символы и символы подчеркивания (Az, 0–9 и _).
Имена переменных не могут содержать пробелы
Имена переменных чувствительны к регистру ($y и $Y — две разные переменные).
Операторы PHP и переменные PHP чувствительны к регистру. |
В PHP нет команды для объявления переменных.
Переменная создается при первом присвоении ей значения:
<?php $ txt = « Привет, мир! » ; $x = 5 ; $ y = 10.5 ;
При выполнении приведенного выше оператора переменная txt будет содержать значение Hello world!, а переменная x будет содержать значение 5 .
Примечание. Когда вы присваиваете текстовое значение переменной, заключайте текстовое значение в кавычки.
В приведенном выше примере мы заметили, что нет необходимости объявлять тип данных переменной PHP.
PHP автоматически преобразует переменную в правильный тип данных в зависимости от ее значения.
В строго типизированном языке программирования мы должны объявить (определить) тип и имя переменной перед ее использованием.
Область действия переменной — это часть сценария, в которой на переменную можно ссылаться/использовать.
PHP имеет четыре различные области видимости переменных:
местный
глобальный
статический
параметр
Переменные, определенные вне всех функций, имеют глобальную область видимости. Помимо функций, глобальные переменные могут быть доступны из любой части скрипта. Чтобы получить доступ к глобальной переменной в функции, вам необходимо использовать ключевое слово global.
Переменные, объявленные внутри функции PHP, являются локальными переменными и доступны только внутри функции:
<?php$x = 5 ; // Функция глобальной переменной myTest (){ $y = 10 ; // Локальная переменная echo "<p>Переменная в тестовой функции:<p>" ; echo "Переменная x: $x " ; echo "<br>" ; echo "Переменная y: $y " ;} myTest ();echo "<p>Переменная вне тестовой функции:<p>" ;echo "Переменная x: $x " ;echo "<br>" ;echo "Переменная y: $y " ? >
В приведенном выше примере функция myTest() определяет переменные $x и $y. Переменная $x объявлена вне функции, поэтому она является глобальной переменной, а переменная $y объявлена внутри функции, поэтому она является локальной переменной.
Когда мы вызываем функцию myTest() и выводим значения двух переменных, функция выведет значение локальной переменной $y, но не сможет вывести значение $x, поскольку переменная $x определена снаружи функцию и не может использоваться внутри функции. Если для доступа к глобальной переменной в функции используйте ключевое слово global.
Затем мы выводим значения двух переменных вне функции myTest(). Функция выведет значение всех локальных переменных $x, но не сможет вывести значение $y, поскольку переменная $y определена в функции. и является локальной переменной.
Вы можете использовать одно и то же имя переменной в разных функциях, поскольку имена переменных, определенные в этих функциях, являются локальными переменными и влияют только на эту функцию. |
Ключевое слово global используется для доступа к глобальным переменным внутри функции.
Чтобы вызвать глобальную переменную, определенную вне функции внутри функции, нам нужно добавить ключевое слово global перед переменной в функции:
<?php $х = 5 ; $y = 10 функция ; мойТест ( ) { глобальный $х , $у ; $у = $х + $ у } мойТест ( ) ; эхо $y // Вывод 15 ?>
PHP хранит все глобальные переменные в массиве $GLOBALS[ index ]. index содержит имя переменной. Доступ к этому массиву можно получить внутри функции или использовать непосредственно для обновления глобальных переменных.
Приведенный выше пример можно записать так:
<?php $х = 5 ; $y = 10 функция ; мойТест ( ) { $GLOBALS [ ' y ' ] = $GLOBALS [ ' x ' ] + $GLOBALS [ ' y ' ] } ; мойТест ( ) ; эхо $у ? >
Когда функция завершается, все ее переменные обычно удаляются. Однако иногда вы хотите, чтобы локальная переменная не удалялась.
Для этого используйте ключевое слово static при первом объявлении переменной:
<?php функция мойТест ( ) { статический $х = 0 ; эхо $ х ; $ х ++ ; мойТест ( ) ; мойТест ( ) ; мойТест ( ) ;
Тогда при каждом вызове функции переменная будет сохранять значение с предыдущего вызова функции.
Примечание. Эта переменная по-прежнему является локальной для функции.
Параметры — это локальные переменные, значения которых передаются функции через вызывающий код.
Параметры объявляются в списке параметров как часть объявления функции:
<?php функция мойТест ( $x ) { эхо $ х } мойТест ( 5 ) ? >
Мы обсудим это более подробно в главе «Функции PHP».