时间:2022-11-03 07:02:55 | 浏览:12308
变量是用于存储信息的"容器":
实例
<?php$x=5;$y=6;$z=$x+$y;echo$z;?>
运行实例 »
与代数类似
x=5
y=6
z=x+y
在代数中,我们使用字母(如 x),并给它赋值(如 5)。
从上面的表达式 z=x+y ,我们可以计算出 z 的值为 11。
在 PHP 中,这些字母被称为变量。
PHP 变量
与代数类似,可以给 PHP 变量赋予某个值(x=5)或者表达式(z=x+y)。
变量可以是很短的名称(如 x 和 y)或者更具描述性的名称(如 age、carname、totalvolume)。
PHP 变量规则:
变量以 $ 符号开始,后面跟着变量的名称
变量名必须以字母或者下划线字符开始
变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
变量名不能包含空格
变量名是区分大小写的($y 和 $Y 是两个不同的变量)
创建(声明)PHP 变量
PHP 没有声明变量的命令。
变量在您第一次赋值给它的时候被创建:
实例
<?php$txt="Hello world!";$x=5;$y=10.5;?>
运行实例 »
在上面的语句执行中,变量 txt 将保存值 Hello world!,且变量 x 将保存值 5。
注释:当您赋一个文本值给变量时,请在文本值两侧加上引号。
PHP 是一门弱类型语言
在上面的实例中,我们注意到,不必向 PHP 声明该变量的数据类型。
PHP 会根据变量的值,自动把变量转换为正确的数据类型。
在强类型的编程语言中,我们必须在使用变量前先声明(定义)变量的类型和名称。
PHP 变量作用域
变量的作用域是脚本中变量可被引用/使用的部分。
PHP 有四种不同的变量作用域:
local
global
static
parameter
局部和全局作用域
在所有函数外部定义的变量,拥有全局作用域。除了函数外,全局变量可以被脚本中的任何部分访问,要在一个函数中访问一个全局变量,需要使用 global 关键字。
在 PHP 函数内部声明的变量是局部变量,仅能在函数内部访问:
实例
<?php
$x=5; // 全局变量
function 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 变量在函数中定义,属于局部变量。
PHP global 关键字
global 关键字用于函数内访问全局变量。
在函数内调用函数外定义的全局变量,我们需要在函数中的变量前加上 global 关键字:
实例
<?php$x=5;$y=10; functionmyTest(){global$x,$y; $y=$x+$y;}myTest();echo$y; // 输出 15?>
运行实例 »
PHP 将所有全局变量存储在一个名为 $GLOBALS[index] 的数组中。 index 保存变量的名称。这个数组可以在函数内部访问,也可以直接用来更新全局变量。
上面的实例可以写成这样:
实例
<?php$x=5;$y=10; functionmyTest(){$GLOBALS["y"]=$GLOBALS["x"]+$GLOBALS["y"];}myTest();echo$y;?>
运行实例 »
Static 作用域
当一个函数完成时,它的所有变量通常都会被删除。然而,有时候您希望某个局部变量不要被删除。
要做到这一点,请在您第一次声明变量时使用 static 关键字:
实例
<?phpfunctionmyTest(){static$x=0; echo$x; $x++;}myTest();myTest();myTest();?>
运行实例 »
然后,每次调用该函数时,该变量将会保留着函数前一次被调用时的值。
注释:该变量仍然是函数的局部变量。
参数作用域
参数是通过调用代码将值传递给函数的局部变量。
参数是在参数列表中声明的,作为函数声明的一部分:
实例
<?phpfunctionmyTest($x){echo$x;}myTest(5);?>
变量是用于存储数据的容器。
PHP 语句和 PHP 变量都是区分大小写的。
你可以在不同函数中使用相同的变量名称,因为这些函数内定义的变量名是局部变量,只作用于该函数内。
金羊网讯 记者唐珩,通讯员李祖文、罗志娟报道:广大私家车主注意啦!1月1日起,白云机场A、B到达区接客流程有变。所有进入A到达区的小型车辆,首先要进入P1停车场等候,再进入A到达区接客,P1与A到达区之间采取联动放行。B到达区满负荷,则会通
大洋网讯 因新白广城际轨道T1站第三期施工需要,7月29日9时起,白云机场1号航站楼A到达区对开的机场大道东路面将进行车道调整——大巴、出租车专用道调整至紧挨航站楼的两条车道,旅客出行不受影响,大巴、出租车上客点不变,仍在A10-A12号门
11月30日零时起,因新白广城际铁路白云机场段建设需要,白云机场方面将关闭1号航站楼A、B到达区社会车辆接客通道,前往1号航站楼A、B到达区接客的社会车辆需前往停车场等待客人。到达旅客可通过人行天桥或地下通道前往附近的停车场上车。为方便旅客
今晚零时(11月30日)起,因新白广城际轨道机场段T1站施工需要,白云机场1号航站楼A、B到达区社会车辆接客通道关闭,私家车机场接人需到停车场候客。为方便广大旅客,小编特为您奉上出行攻略:如果您从1号航站楼抵达,接机车辆请选择P1-P5停车
施工期间出港流程不变,旅客出行受影响不大金羊网讯 记者唐珩、通讯员机场宣报道:记者从白云机场获悉,11月2日起,白云机场将采取分期分批施工的方式,对一号航站楼出发厅A区、B区安检通道以及国际中转安检通道进行升级改造,工期计划到明年5月结束,
为优化地面交通接驳流程,让到达旅客更充分体验到“地空无缝对接”便捷服务,10月15日起,白云机场对到达区大巴、出租车上落客点的布局进行了优化调整,调整后大巴上客点将集中到A、B到达区靠近出口位置,将更多的空间让位于的士车辆。届时,急需打车离
您现在所在的位置:首页>空港服务>安全>> 正文一个火机,被老外的绕指术转来转去,从背包到手心,从手心到口袋,仅几秒钟的时间便将火机转移,火机在到底在哪儿很难被人发现,这种变戏法的才艺本是在电视节目里的表演,没想到今
失眠是现代人的一种通病,因为压力等原因经常会晚上睡不着觉,第二天精神不好,工作学习效率不高,那么失眠了要怎么办呢?这几个食疗方可以试试,效果明显。⊙版权声明:文章选自网络,如侵权请联系我们删除。⊙投稿信箱:ynzywx@qq.com(欢迎您
睡眠也能长寿你可知道,每天我们的睡眠一直都是好的质量,会增加我们的寿命,有的人会说利用药材,吃一些补药,这样不是会更加容易的长寿。其实我们的睡眠就可以帮助我们做到这几点,通过睡眠就能够让你更加的长寿,睡眠好身体棒,睡眠不好,失眠了,身体差,
不健康的用眼习惯,叠加遗传因素影响,我国既是人口大国,也是近视大国,近视人口超过6亿。随着激光准分子等眼科技术的进步,相当部分的成年近视人口,可以快速视力矫正。但对于7000万高度近视而言,他(她)们过高的眼镜度数,制约了手术矫正的开展。“