php01
Posted just-hq
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php01相关的知识,希望对你有一定的参考价值。
1.1变量类型
- 整型 [integer] 数学中的整数
- 浮点型 [float,double] 数学中的小数
- 字符串 [string] 一串字符
- 布尔 [boolean] 真假 数组 [array] 键值对复合数据
- 对象 [Object]
- NULL 没有值
- 资源 [resource]
1.2变量名称的命名规范:
- [a-zA-Z0-9]和下划线(_)
- 变量名是区分大小写的
- 不能以数字开头
1.3变量检测
说明:echo 一个不存在的变量,会报notice级别的错误, 所以要检测一下这个变量是否存在
isset(变量名) 检测变量是否设置 已声明的变量返回 true,未声明的变量返回 false.
对于值为 NULL 的变量,也返回 false,因为null没有值 未曾声明的变量,也不存在
1.3.1变量类型检测
- is_float()检测变量是否为浮点型
- is_int()[is_integer] 检测变量是否为整型
- is_string() 检测变量是否为字符串
- is_object() 检测变量是否为对象
- is_array() 检测变量是否为数组
- is_resource 检测变量是否为资源类型
- is_bool 检测变量是否是布尔型
- is_null 检测变量是否为 NULL
$a = ‘hello‘;
if(is_string($a)) {
echo ‘a是字符串‘;
} else {
echo ‘a不是字符串‘;
}
1.4调试打印变量
- echo 字符串,数字
- print_r 打印层次化的数据,比如:数组,对象
- var_dump 打印变量的类型及其值(调试方便)
1.5类型转换
php中,变量的类型是可以随时转换的,非常的灵活 最常见的是字符转与数字之间的相互转换,
或者是数字/字符 串 -> 布尔值的转换
字符串到数字的转换
从左到右截取,直道碰到不合法的数字,截取下来的部分转换为数字
$a = ‘22‘; $b = $a + 3; var_dump($b); $a = ‘12.5hello‘;//$a = ‘12.5hello99‘; $b = $a +3; var_dump($b); $a = ‘word12.5hello‘; $b = $a + 3; var_dump($b);
数字到字符串的转换
$a = 123; $b = $a . ‘hello‘; var_dump($b);
数字 数字/字符串 字符串/数组等到布尔型值的转换
$b = 3; if( $b ) { echo ‘b is true‘; } else { echo ‘b is false‘; }
以下值,都被理解为成布尔型值的假 都被理解为成布尔型值的假 ‘‘,‘0‘,0,0.0,false,NULL,array();
而其它值,都被当成布尔型的真
empty(var) 检查一个变量是否为空
如果 var 是非空或非零的值,则 empty() 返回 FALSE
如""、0、0.0、"0"、NULL、FALSE、array(); 以及没有任何属性的对象都将被认为是空的
如果 var 为空,则返回 TRUE
$arr = array(); if(empty($arr)) { echo ‘变量为空‘; }
1.6变量的赋值
a.传值赋值
$a = 99;
$b=$a;
echo $a,‘~‘,$b;//99~99
$a=10;
echo $a,‘~‘,$b;//10~99
b.引用赋值
$a = 99; $b=&$a; echo $a,‘~‘,$b; //99~99 $a=10; echo $a,‘~‘,$b; //10~10
1.7变量的销毁
为什么要销毁变量?
因为,有时比较大的数组,或者比较大的对象,比较耗费资源,将它unset掉,可以及时释放出内存
unset(变量名); 销毁指定的变量
$a = 66; //unset($a); if(isset($a)) { echo ‘a存在‘; } else { echo ‘a不存在‘; }
注意: 引用赋值,如果两个变量指向同一个盒子,当销毁其中一个变量的时候,盒子是不能被销毁掉的.
$a = 99; $b = &$a; unset($a); echo $a,$b;//报一个notice的错误
1.8动态变量名
动态变量名,可以体现php非常灵活的一个地方 用变量的值去做另一个变量的名
$laoda = ‘liubei‘; echo $laoda , ‘<br >‘; $paihang = ‘laoda‘; echo $paihang , ‘~‘ , $$paihang; //排行 $rank = ‘paihang‘; echo $$$rank; //liubei //laoda~liubeiliubei
以上是关于php01的主要内容,如果未能解决你的问题,请参考以下文章