- 在PHP中变量是用于存储信息的"容器"
- 与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)变 量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。
- PHP 变量规则:
变量以 $ 符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
变量名不能包含空格
变量名是区分大小写的($y 和 $Y 是两个不同的变量) - PHP 是一门弱类型语言
我们不必向 PHP 声明该变量的数据类型,PHP 会根据变量的值,自动把变量转换为正确的数据类型。在强类型的编程语言(C语言或C++语言)中,我们必须在使用变量前先声明(定义)变量的类型和名称。 - PHP 变量作用域
- 局部和全局作用域
在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。
在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:
变量的作用域是脚本中变量可被引用/使用的部分。 - PHP 有四种不同的变量作用域:
local——全局变量
- 局部和全局作用域
<?php
$x = 5; //在这里x为全局变量,在函数外声明
function myFunction(){
...
}
?>
global——在一个函数中访问一个全局变量。PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。(小编提示一下,大家尤其要注意index[即原文中x 、y]的位置哦)
<?php
$x = 3;
$y = 5;
function myFunction(){
global $x, $y; //使用global关键字调用全局变量 x 、y
$z = $x + $y;
echo $z;
}
myFunction(); //将输出8
?>
<?php
$x=5;
$y=10;
function myTest()
{
$GLOBALS['y']=$GLOBALS['x']+$GLOBALS['y']; //使用 $GLOBALS[index]
}
myTest();
echo $y;
?>
static——可确保某个局部变量在使用完成后不仅不会被擦除,反而还会保留程序执行之后的值。
<?php
function myFunction($x){
static $z = 0; //在这里$z就是一个static(静态变量,在函数调用完成后并不会被释放)
$z += $x;
echo $z;
}
for($n = 0; $n < 3; $n++){ //此循环将会输出 1 2 3
myFunction($n);
echo " ";
}
?>
parameter——参数作用域
参数是通过调用代码将值传递给函数的局部变量。参数是在参数列表中声明的,作为函数声明的一部分:
<?php
function myFunction($x){ //在这里$x就是一个参数
static $z = 0;
$z += $x;
echo $z;
}
for($n = 0; $n < 3; $n++){ //此循环将会输出 1 2 3
myFunction($n);
echo " ";
}
?>
好啦,以上就是php变量的有关内容,希望能对大家有所帮助