今天开始 PHP 的学习,前边落下两节课,今天以博文的形式学习兼记录。
PHP 变量
命名
以 $(美元符号) 加 变量名 组成,不能以数字开头,区分大小写;
组成规划
- 大小写的英文字母 a-z, A-Z;
- 下划线;
- 数字。
变量命名例子
$a = 1; // 正确,但无意义。
$4plus = '4plus'; // 错误,不能以数字开头
$站点名称 = '开心网'; // 正确,可以使用中文,但不推荐使用。
注意
不要编写正确但无意义的变量名,如:$abc 等;
PHP 变量是弱类型,会根据赋值变化
$a = 100;
var_dump($a); //int(100)
$a = '100';
var_dump($a); //string(3) "100"
传值赋值 和 引用赋值
变量默认总是传值赋值
$name = 'jack';
$nickName = $name;
echo " $name and $nickName<br>"; //jack and jack
$nickName = 'rose';
echo " $name and $nickName"; //jack and rose
// 引用赋值,两者同时更新
$nickName = &$name;
$nickName = 'mark';
echo " $name and $nickName"; //mark and mark
可变变量
$a = 'hello';
$$a = 'world';
echo "$a $hello"; //hello world
echo "$a ${$a}"; //hello world
检测与删除变量
可以用 isset() 函数检测变量是否已设置并且非 NULL
$name = ''; // 空字符串不是NULL
$sex;
echo isset($name) ? 'ok' : 'no'; //ok
echo isset($sex) ? 'ok' : 'no'; //no,$sex 变量已定义而未初始化,默认值为 NULL
变量作用域
变量的作用域是它的生效范围,包括 include 和 require 引入 的文件。
序号 | 变量类型 | 描述 |
---|---|---|
1 | 私有变量 | 函数中定义的变量 |
2 | 全局变量 | 函数之外定义的变量 |
3 | 超全局变量 | 也叫预定义变量,访问不受作用域限制 |
$name = 'jack'; // 全局变量
echo $name; // jack
fcuntion demo() {
echo $name //
}
demo(); //Notice: Undefined variable: name in...
静态变量
function test()
{
// 设置为局部静态变量
static $num = 1;
echo $num++;
}
test();
test();
test();
test(); // 1234
最后学习了数据类型
序号 | 名称 | 英文名称 |
---|---|---|
1 | 布尔型 | boolean |
2 | 整型 | integer |
3 | 浮点型 | float |
4 | 字符串 | string |
5 | 数组 | array |
6 | 对象 | object |
7 | 可调用 | callable(未学) |
8 | 资源 | resource |
9 | 无类型 | NULL |