Переменные PHP
Переменная в PHP — это ячейка памяти в которую можно поместить любую информацию!
Правила для PHP переменных:
— Имя переменной должно начинаться с буквы или с нижнего подчеркивания
— Имя переменной не может начинаться с числа
— Имя переменной может содержать только буквенно-цифровые символы и нижние подчеркивания (A-z, 0-9, и _ )
— Имена переменных чувствительны к регистру ($name и $NAME это две разные переменные)
Переменная объявляется через доллар
$nazvanie = 5;
Вы только что в памяти сервера сделали ячейку «nazvanie» и туда поместили — 5.
Можно создать переменную которую нельзя изменять (это константа)!
define("nazvanie" , "5");
У переменных есть своя область действия:
- Глобальные видно за пределами функций, и не видно в самих функциях.
- Локальные видно только в самой функции.
Пример:
$nazvanie = 5;
function (){
$nazvanie = 6;
// Здесь видно цифру - 6, а 5 не видно!
}
// а Здесь видно цифру - 5, а 6 не видно!
Переменная переменной
$nazvanie = 'old';
$old = 567;
echo $$nazvanie;
// $$nazvanie = 567
// - эта переменная взяла свое название из значения переменной $nazvanie.
переменные переменных не могут использоваться с суперглобальными массивами PHP. !!!
В самом языке PHP уже предопределенны некоторые переменные.
Список предопределенных переменных:
superglobal это предопределенная переменная, которая всегда является доступной, независимо от области видимости. Вы можете получить доступ к этим переменным из любой функции, класса, или файла.
Суперглобальными переменными в PHP являются $_SERVER, $GLOBALS, $_REQUEST, $_POST, $_GET, $_FILES, $_ENV, $_COOKIE, $_SESSION.
$_SERVER
$_SERVER это массив, который включает в себя информацию типа заголовков, путей и местонахождений скриптов. Вход в этот массив создается веб сервером.
$_SERVER[‘SCRIPT_NAME’] возвращает путь текущего скрипта:
<?php
echo $_SERVER['SCRIPT_NAME'];
?>
Этот метод может быть полезен, когда у вас много изображений на одном сервере и вам необходимо их перенести на другой host. Вместо замены пути каждого изображения, вы можете сделать следующее:
Создайте файл config.php, который содержит путь к вашим изображениям:
<?php
$host = $_SERVER['HTTP_HOST'];
$image_path = $host.'/images/';
?>
Используйте файл config.php в ваших скриптах:
<?php
require 'config.php';
echo '<img src="'.$image_path.'header.png" />';
?>