[PHP字符串]④--类型转换

Paste_Image.png

自动类型转换

Paste_Image.png
echo 123;//123
echo "<br/>";
echo 34.5;//34.5

echo "<br/>";
echo true;//1
echo "<br/>";
echo false;//空字符串

echo "<br/>";
echo null;//空字符串

echo "<br/>";
$arr = array();
echo $arr;//Array

echo "<br/>";
$handle = fopen('footer.php', 'r');
echo $handle;//Resource id #3

echo "<br/>";
$obj = new stdClass();
echo $obj;//Catchable fatal error 使用__tostring魔术方法
Paste_Image.png

强制类型转换

(string)

$var = 123;
$var = 23.3;
$res = (string)$var;
var_dump($res);//string '123' (length=3)

$var = true;
$res = (string)$var;
var_dump($res);//string '1' (length=1)

$var = array(1, 2, 3, 4);
$res = (string)$var;
var_dump($res);//string 'Array' (length=5)

strval()

$var = 123;
$var = 23.3;
$res = strval($var);
var_dump($res);//string '23.3' (length=4)

gettype

settype

$str='king';
echo gettype($str);//string

echo "<hr/>";
$var=12;
settype($var,'string');
var_dump($var);//string '12' (length=2)
Paste_Image.png

字符串转换成其他类型

取合法数字 如果不是以合法数字开始 转换成0

echo 1 + '3king';//4

echo "<br/>";
echo 1.2 + '4abc';//5.2

echo '<br/>';
echo 3 + '2e2';//203

echo '<br/>';
echo 2 + 'true';//2  true:0
Paste_Image.png

字符串转换成布尔类型的规律

空字符串或者是'0' "0"->false

echo "<br/>";
$str='0.0';//true
$str='false';//true
$str='';//false
$str='0';//false
$str=0;//false
$str=null;//false

if($str){
    echo "true";
}else{
    echo "false";//false
}
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容