变量:标识符加上$
类型
一.整型
- 浮点型( 如果是float类型,判定类型时返回double,而不是float)
- 字符串(string)
- 布尔(boolean)
- 数组(array)
- 对象(object)
NULL (NULL没有值,也没有类型)
资源(resource)
二。变量的检测
//isset()检测变量是否存在,对于null,isset也返回false,值为0或空字符串时都返回ture
if(isset($b)){
echo "变量b存在"
}else{
echo "变量b不存在"
}
获取变量类型
$a = '1';
echo =gettype($a)//返回string
判断是否是想要的类型
is_string//是否是字符串
is_int//是否整型
.....
//返回布尔值
打印
echo(适合字符串)
print_r(适合数组)
var_dump(适合打印变量的类型和值)
$a='1';
echo $a;
$b = array(1,2,3);
print_r($b);
类型的转换
php中,变量的类型时可以随时转换的,非常灵活,最常见的是字符串与数字,或是字符串和数字转成布尔值!
//字符串到数字的转换,从左到右截取,直到碰到不合法的数字,截取出来的部分转成数字,再参与运算
$a = '12';
$a = $a+3;
var_dump($a);//int(15)
//字符串到数字
$a =123;
$a =$a.'hello';
echo $a;//123hello
//到布尔型的判断,以下值,都被当成布尔的假,而其它的值,都被当成布尔型的真
'',0,0.0,false,null,array(),var $var;
赋值
变量赋值之传值赋值
$li =29;
$wang =23;
$wang = $li;
var_dump($li,$wang);//int(29) int(29)
$wang ='w';
var_dump($li,$wang);//int(29) string(1) "w"
$li =29;
$wang =23;
$wang = &$li;
var_dump($li,$wang);//29 29
$wang ='w';
var_dump($li,$wang);//string(1) "w" string(1) "w"
销毁(unset)
$a = 99;
unset($a);
if(isset($a)){
echo 'a存在';
}else{
echo 'a不存在 '
}
//a不存在
$li =29;
$wang =23;
$wang = &$li;
var_dump($li,$wang);//29 29
$wang ='w';
var_dump($li,$wang);//string(1) "w" string(1) "w"
unset($li)
var_dump($li,$wang);//null string(1) "w"
动态变量名
用变量的值做变量名:如$$a
$liubei = '河北人';
$laoda ='liubei';
echo $laoda,${$laoda);//liubei ,河北人