变量
- 变量是用来存储信息的“容器”
- 变量以$ 符号开始,后面跟着变量的名称
- 变量名必须以字母、数字、下划线组成,数字不开头
- 变量名区分大小写
注意:PHP语句和PHP变量都是区分大小写的
创建变量
- PHP是一门弱类型语言
- 创建变量时,不必向PHP声明该变量的数据类型
- PHP会根据变量的值,自动把变量转化为正确的数据类型
<?php
$txt = "Hello PHP!";
$x = 10;
$y = 5.5;
$r = $x + $y;
echo $txt,$r;
?>
运行截图
变量作用域
- 变量的作用域是脚本中变量可被引用/使用的部分
- 在PHP中 有四种不同的变量作用域:
local
global
static
parameter
局部和全局作用域
- 在所有函数外部定义的变量,拥有全局作用域
- 除函数外,全局变量可以被脚本中的任何部分访问
- 在PHP函数内部声明的变量是局部变量,仅能在函数内部访问
- 要在函数中访问一个全局变量,需要使用global关键字
<?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";
?>
运行截图
global关键字
- global关键字用于函数内访问全局变量
- 在函数内调用函数外定义的全局变量,则需要在函数中的变量前加上 global 关键字
<?php
$a = 10;
$b = 20;
$c = 30;
function Text()
{
global $a,$b;
echo $a;
echo "<br>";
echo $b;
echo "<br>";
echo $c;
}
text()
?>
运行截图
Static 作用域
- 当一个函数完成时,它的所有变量通常都会被删除
- 然而,有时希望某个局部变量不要被删除,则需要在第一次声明变量时使用static关键字
- 注意:该变量仍然是函数的局部变量
<?php
function test(){
static $x = 1;
$y = 1;
echo $x;
echo "<br>";
echo $y;
$x++;
$y++;
echo "<hr>";
}
test();
test();
test();
test();
?>
运行截图
参数作用域
- 参数是通过调用代码 将值传递给函数的局部变量
- 参数是在参数列表中声明的,作为函数声明的一部分
<?php
function text($a){
echo $a;
}
text(10);
?>
运行截图
超级全局变量
- PHP中预定义了几个超级全局变量(superglobals) ,这意味着它们在一个脚本的全部作用域中都可用
- $GLOBALS
- $_SERVER
- $_REQUEST
- $_POST
- $_GET
- $_FILES
- $_ENV
- $_COOKIE
- $_SESSION