PHP | 变量测试、转换、PHP常量和运算符

一、PHP变量类型测试

变量输出:

1.echo
2.var_dump() 输出变量的类型和值//一个字母或数字或空格或逗号为1字节,一个中文字为3字节
3.print
4.printf 格式化输出
5.sprintf  只返回不输出,只能另一个变量等于sprintf(---),然后echo...

测试变量是否存在:isset();

变量不存在的情况:1)未定义;2)NULL;

<?php
$a='';
$b=false;
$c=null;
var_dump(isset($a));//boolean true
var_dump(isset($b));//boolean true
var_dump(isset($c));//boolean false
var_dump(isset($d));//boolean false
?>

测试变量是否为空:empty();

变量为空的情况:

1)$a=null; 2)$a=''; 3)$a='0'; 4)$a=false; 5)$a=array(); 6)$a=0; 7)$a=0.0;

任何一个对象都是非空的

<?php
$a='';
$b=false;
$c=null;
var_dump(empty($a));//boolean true
var_dump(empty($b));//boolean true
var_dump(empty($c));//boolean true
var_dump(empty($d));//boolean true
?>

变量类型的测试函数:

1.gettype(); 获取类型结果

2.is_int($a) 整型判断

3.is_string($a) 字符串判断

4.is_array($a) 数组判断

5.is_object($a) 对象判断

6.is_null($a)  null判断

7.is_resource($a) 资源判断

8.is_scalar($a)  判断是否为标准类型:int float string boolean

9.is_callable($a) 判断是否为函数

2-9结果均为bool类型,echo打印布尔类型的值:1)true-> 1;2)false-> 空

二、PHP变量类型转换

变量类型自动转换:

1.整型->字符串

$a=10;
echo $a.'abc';//10abc

2.字符串->整型

$a='10abc';
echo $a+10;//20

3.所有类型->布尔型(为假)

$a=0;
$a=0.0;
$a=array();
$a=null;
$a='';
$a='0';
$a=false;

变量类型强制转换:

<?php
$a='...';
var_dump((int)$a);
var_dump((float)$a);
var_dump((bool)$a);
var_dump((string)$a);
var_dump((array)$a);
var_dump((object)$a);
?>

三、PHP常量

常量一旦定义不允许再更改,而且常量名前没有$,常量名字必须是大写的

常量的定义:

define('HOST','localhost');
define('USER','root');
define('PASS','123');
define('DBNAME','test');

常量的输出:

echo HOST;
echo 'my name is ' .HOST. '!!!';

判断常量是否存在:

<?php
define('HOST', 'root');
var_dump(defined('HOST')); //boolean true
?>

预定义常量:

__FLIE__; 当前文件绝对路径
__LINE__; 当前行数
__FUNCTION__; 在函数内知道函数名
M_PI;  圆周率

四、PHP运算符

1.一元运算符:++  --

2.二元运算符:

1)数学运算符:+ - % * /

2)赋值运算符:=  +=  -=  *=  %=  /=  .= (.连接字符串)

3)比较运算符:==  !=  >  <  >=  <=  ===   !==

4)逻辑运算符:&&(与)   ||(或)   !(非)

&&前面为true则执行后面,||前面为false则执行后面

3.三元运算符:$a?$b:$c

运算符优先级

• ++,--
• * / %
• + - .
• < <= > >=
• == != === !==
• & |
• && ||
• ? :
• = += -= *= /= %=

补充运算符:

1.@临时屏蔽错误

2.->

<?php
class Person{
    public $name='zyd';
}
$obj=new Person();
echo $obj->name;//zyd
?>

3.=>

<?php
$arrayName = array(
    'name' => 'zyd',
    'age' => '19', );//=>用于关联数组
var_dump($arrayName);
//result:
// array (size=2)
//   'name' => string 'zyd' (length=3)
//   'age' => string '19' (length=2)
?>

4.new

5.instanceof

<?php
class Person{};
$obj=new Person(); //new新建一个对象
var_dump($obj instanceof Person);//boolean true
//instanceof判断一个对象是否从一个类中实例化出来的
?>

 

 

 

 

 

 

 

 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值