PHP数据类型转换
自动类型转换
- 有布尔型值参与运算时,TRUE将转化为整型1, FALSE将转化为整型0后再参与运算
- 有NULL值参与运算时,NULL值转化为整型0再进行运算
- 有 Integer型和 float型参与运算时,先把 Interger型变量转成 float类型后再进行运算
- 有字符串和数字型( Integer,foat)数据参与运算时,字符串先转换为数字,再参与运算。转化后的数字是从字符串开始的数值型字符串,如果在字符串开始的数值型字符串不带小数点则转为 Integer类型数字。如果带有小数点,则转为foat类型数字,
<?php
$a=False;
echo $a+2,'<br/>';
$b="123a";
echo $b+2,'<br/>';
$c=NULL;
echo $c+1,"<br/>"
?>
运行结果:
强制类型转换
- (int),( Integer):转换成整型。
- (bool),( boolean):转换成布尔型。
- ( float),( double),(real):转换成浮点型。
- ( string):转换成字符串。
- (aray):转换成数组。
- ( object):转换成对象。
<?php
$a=False;
$a=(int)$a;
var_dump($a);
echo "<br/>";
$b=123;
$b=(string)$b;
var_dump($b);
?>
运行结果:
- intval(),转换成整数
- floatval(),转换成浮点数
- strval(),转换成字符串
- 以上函数不能改变原变量的类型,如果需要改变原变量类型,则使用setType()函数
<?php
$a=False;
$a=intval($a);
var_dump($a);
echo "<br/>";
$b=123;
$b=strval($b);
var_dump($b);
echo "<br/>";
$c="123.5";
settype($c, "integer");
var_dump($c);
?>
常量
常量一般用于一些数据计算中的固定数值,一旦定义就不能再改变,并且常量的作用域是全局的,能够在整个脚本当中使用常量
常量的定义
常量的定义使用define()函数进行,并且对于常量的命名来说,我们一般使用全部大写的常量来进行命名
- boolean define(string name, mixed value[,bool case_insensitive])
此函数的第一个参数为字符串类型的常量名,第二个参数为常量的值或是表达式,第三个参数是可选的,如果把第三个参数 case_insensitive设为TRUE,则常数将会定义成不区分大小写。预设是区分大小写的。如果只想检查是否定义了某常量,用 defined函数。
<?php
define("NUMBER",123);
echo NUMBER;
#不区分大小写
define("COUT","hello",true);
echo cout;
echo "<br/>";
if (defined('NUMBER')){
echo NUMBER;
}
?>
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
暂无评论内容