变量类型:
- String(字符串)
- Integer(整型)
- Float(浮点型)
- Boolean(布尔型)
- Array(数组)
- Object(对象)
- NULL(空值)
检测变量:
- isset:检测变量是否已设置并且非 NULL
if(isset($xxoo)){
echo '变量xxoo存在'
}else{
echi '变量xxoo不存在'
}
变量类型检测:
- gettype: 获取变量的类型
$xxoo = 'xxoo';
echi gettype($xxoo);
//输出结果:string
检测变量是否是指定类型:
- is_int:检测变量是否是整数
- is_array:检测变量是否是数组
- is_bool:检测变量是否是布尔型
- is_string:检测变量是否是字符串
- is_object:检测变量是否是一个对象
$xxoo = 123;
if(is_int($xxoo)){
echo '整型';
}else{
echo '非整型';
}
//输出结果:整型
输出方式(打印):
- echo:输出一个或多个字符串
- print:只允许输出一个字符串,返回值总为 1
- print_r:通常用于打印数组
- var_dump:打印变量类型及其值
$a = '10086';
$b = array(1,2,'3');
echo $a;
print_r($b);
var_dump($b);
/*输出结果:10086
*Array ( [0] => 1 [1] => 2 [2] => 3 )
*array(3) { [0]=> int(1) [1]=> int(2) [2]=> string(1) "3" }
*/
类型转换:
- (int)或(integer) - 转换成整型
- (bool)或(boolean) - 转换成布尔型
- (float)或(double)或(real) - 转换成浮点型
- (string) - 转换成字符串
- (array) - 转换成数组
- (object) - 转换成对象
$a = 10;
$b = (boolean)$a;
var_dump($a);
var_dump($b);
/*输出结果:
*$a为整型int(10)
*$b为布尔型bool(true)
*/
变量|| 传值赋值:
$a = 10086;
$b = 13800;
$b = $a;
var_dump($a,$b);
$b = 'xxoo';
var_dump($a,$b);
/*输出结果:
*$a的值为int(10086),$b的值为int(10086)
*$a的值为int(10086),$b的值为string(4)"xxoo"
*/
变量|| 引用赋值:
$a = 10086;
$b = 13800;
$b = &$a;
var_dump($a,$b);
$b = 'xxoo';
var_dump($a,$b);
/*输出结果:
*$a的值为int(10086),$b的值为int(10086)
*$a的值为string(4)"xxoo",$b的值为string(4)"xxoo"
*/
销毁(释放)变量:
- unset() :用于销毁一个或多个变量。
// 销毁单个变量
unset ($var);
// 销毁单个数组元素
unset ($arr['a']);
// 销毁多个变量
unset ($var1, $var2, $var3);
实例:
$a = 10086;
$b = 13800;
$b = &$a;
var_dump($a,$b);
$b = 'xxoo';
var_dump($a,$b);
unset($a);
var_dump($a,$b);
/*输出结果:
*$a的值为int(10086),$b的值为int(10086)
*$a的值为string(4)"xxoo",$b的值为string(4)"xxoo"
*$a的值为NULL,$b的值为 string(4) "xxoo"
*/
可变(动态)变量:
$a = '隔壁老梁';
$b = 'a';
$c = 'b';
echo $b, ${$b}, $$$c;
/*输出结果:
*$b的值为a
*${$b}的值为隔壁老梁
*$$$c的值为隔壁老梁
*/
Comments | NOTHING