PHP 变量
1.变量的声明
(1)php是弱类型语言, 在创建变量时无需声明该变量的数据类型
(2)变量名遵循以下规则:
- 变量以 $ 符号开始,后面跟着变量的名称
- 变量名必须以字母或者下划线字符开始
- 变量名只能包含字母数字字符以及下划线(A-z、0-9 和 _ )
- 变量名不能包含空格
- 变量名是区分大小写的($y 和 $Y 是两个不同的变量)
<?php
$txt="Hello world!";
$x=5;
$y=10.5;
?>
2.作用域
从作用域上来看,php变量分为全局变量和局部变量
类型 | 说明 | 访问方式 |
---|---|---|
全局变量 | 函数外部定义的变量就是全局变量 | 在函数外部可直接访问全局变量,函数内部访问时需要global进行声明,或者直接使用$$GLOBALS配合变量名进行访问 |
局部变量 | 函数内部定义的变量就是局部变量 | 只能在函数内部访问 |
<!DOCTYPE html>
<html>
<body>
<?php
$str = "hello wrold"; //定义全局变量
echo $str; //函数外部访问全局变量
echo "</br>";
//定义函数
function test()
{
//函数内访问全局变量需要先声明
global $str;
echo $str; //函数内部访问全局变量
echo "</br>";
//还可以通过$GLOBAL这个对象访问全局变量
echo $GLOBALS['str'];
echo "</br>";
//局部变量 只能在函数内访问
$num = 10;
echo "局部变量:";
echo $num;
};
test(); //调用函数
?>
</body>
</html>
3.Static关键字
当一个函数完成时,它的所有变量通常都会被删除。如果你希望某个数据在函数调用完毕后被缓存下来,就可以使用static关键字对这个变量进行声明
<?php
//定义函数 使用static关键字
function test(){
static $num = 0;//初始值为0
echo $num;
echo "<br>";
$num++;//每次调用自增1
};
test();//调用函数
test();//调用函数
test();//调用函数
test();//调用函数
//定义函数 不使用static关键字
function test2(){
$num = 0;//初始值为0
echo $num;
echo "<br>";
$num++;//每次调用自增1
};
test2();//调用函数
test2();//调用函数
test2();//调用函数
test2();//调用函数
?>
4.基本数据类型
- 数字类型
<?php
$num = 123;
echo $num;
echo "<br>";
$num2 = 123.456;
echo $num2;
?>
- 字符串类型
<?php
$str = "hello world";
echo $str;
?>
- 布尔类型
<?php
$flag = true;
echo $flag; // 1
?>
- null
<?php
$x = null;
?>