Константы
php
js
константы "частично" можно менять
Переменные
php
js
Предопределённые переменные php
Суперглобальные переменные — Встроенные переменные, которые всегда доступны во всех областях
second.php
a+b=3
(a+b)=3
second.php: a+b=3
sum1: a+b=0
sum1: a1=
sum2: a+b=3
c=5
d=
e=7
sum3: a+b=3
Видимость переменных js
php
| Важно! Значение константы нельзя изменять после объявления Можно объявлять константами:
|
define("CONSTANT1", "Здравствуй, мир1."); //вариант 1
const CONSTANT2 = 'Здравствуй, мир2.'; //вариант 2
define("CONSTANT_ARRAY", [1,2,3]);
if(defined('CONSTANT1') && defined('CONSTANT2')){ //определена ли константа CONSTANT1 И CONSTANT2
echo CONSTANT1." ".CONSTANT2;
} |
константы "частично" можно менять
const constant1 = 1;
//const constant1 = 2; //так нельзя
//constant1 = 2; //так нельзя
if(constant1 == 1){//a так можно
const constant1 = 2;
console.log(constant1); //здесь 2
}
console.log(constant1); //здесь 1
const constant2 = [2,3,4];
//constant2 = [2,3,4,5]; //так нельзя
constant2[0] = 1; //так можно
constant2.push(8); //так можно
console.log(constant2);
const constant3 = {
"a" : 2,
"b" : 3,
"c" : 4,
};
constant3.b = 5; //так можно
console.log(constant3); |
Переменные
| Переменная - поименованная, либо адресуемая иным способом область памяти, адрес которой можно использовать для осуществления доступа к данным. Значение переменной - данные, которые находятся в переменной. Переменная - это то, что изменяется по коду |
$a = 5; //переменная а, значение переменной 5 $a = "wer"; //переменная а, а значение переменной стало "wer" $a = [1,2,3,8]; |
let a; //var a; a = 5; //переменная а, значение переменной 5 a = "wer"; //переменная а, а значение переменной стало "wer" |
Предопределённые переменные php
| первоисточник |
Суперглобальные переменные — Встроенные переменные, которые всегда доступны во всех областях
- $GLOBALS — Ссылки на все переменные глобальной области видимости
- $_SERVER — Информация о сервере и среде исполнения
- $_GET — Переменные HTTP GET
- $_POST — Переменные HTTP POST
- $_FILES — Переменные файлов, загруженных по HTTP
- $_REQUEST — Переменные HTTP-запроса
- $_SESSION — Переменные сессии
- $_ENV — Переменные окружения
- $_COOKIE — HTTP Cookies
- $php_errormsg — Предыдущее сообщение об ошибке
- $http_response_header — Заголовки ответов HTTP
- $argc — Количество аргументов, переданных скрипту
- $argv — Массив переданных скрипту аргументов
$a = 1;
$b = 2;
global $a1;
$a1 = 10;
echo "a+b=".$a+$b."<br>";
echo "(a+b)=".($a+$b)."<br>";
include("second.php"); //в файле тоже будут видны
function Sum1(){
echo "sum1: a+b=".$a+$b."<br>"; //так a b не видны
echo "sum1: a1=".$a1."<br>"; //а1 не видна
}
Sum1(); //0
function Sum2(){
global $a,$b, $c; //объявляем глобальными
$c = 5; //эта будет видна за пределами функции
$d = 6;
$GLOBALS["e"] = 7; //так тоже можно объявить глобальной
echo "sum2: a+b=".$a+$b."<br>"; //так видны
}
Sum2();
echo "c=".$c."<br>"; //5
echo "d=".$d."<br>";//пусто
echo "e=".$e."<br>";//7
function Sum3(){
echo "sum3: a+b=";
echo $GLOBALS["a"]+$GLOBALS["b"]."<br>";
}
Sum3(); |
<? echo "second.php: "; echo "a+b=".$a+$b."<br>"; |
a+b=3
(a+b)=3
second.php: a+b=3
sum1: a+b=0
sum1: a1=
sum2: a+b=3
c=5
d=
e=7
sum3: a+b=3
Видимость переменных js
a = 1; // cтановится глобальной. если не выбран строгий режим "use strict". Если выбран, то ошибка
let la=2; //если внутри блока, то область видимости переменной ограничивается этим блоком.
var va=3; //область видимости вся функция, в которой они были объявлены
console.log("la+va="+la+va,"(la+va)="+(la+va));//23 - как строки сложатся, 5 - как числа сложатся
if(a == 1){
b = 4; //будет видно за пределами if (если не "use strict")
var vb = 4; //будет видно за пределами if
let lb = 4; //НЕ будет видно за пределами if
}
console.log("b="+b,"vb="+vb);
//console.log("lb="+lb); //ошибка, lb не определено
function Func1(){
c = 5; //cтановится глобальной. если не выбран строгий режим ("use strict";). Если выбран, то ошибка
let lc = 5; //за пределами функции не видно
var vc = 5; //за пределами функции не видно
console.log("Func1: a="+a, "la="+la, "va="+va, "c="+c, " lc="+lc, "vc="+vc);
a++;
la++;
va++;
c++;
lc++;
vc++;
console.log("Func1 after ++: a="+a, "la="+la, "va="+va, "c="+c, " lc="+lc, "vc="+vc);
}
Func1();
console.log("after Func1: a="+a, "la="+la, "va="+va, "c="+c);
//console.log("after Func1: lc="+lc); //undef
//console.log("after Func1: vc="+vc); //undef
function Func2(){
let a =100;
let la=200;
var va=300;
var c = 400;
}
Func2();
console.log("after Func2 a ="+a,"la="+la,"va ="+va, "c="+c); //не изменились
|