<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<?php
$num ='3.1415926r*r';
echo '使用(integer)操作符转换变量$num类型:';
echo (integer)$num;
echo'<p>';
echo'输出变量$num的值:'.$num;
echo'<p>';
echo'使用settype函数转换变量$num类型:';
echo settype($num,'integer');
echo'<p>';
echo'输出变量$num的值:'.$num;
?>
</body>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<?php
$num ='3.1415926r*r';
echo '使用(integer)操作符转换变量$num类型:';
echo (integer)$num;
echo'<p>';
echo'输出变量$num的值:'.$num;
echo'<p>';
echo'使用settype函数转换变量$num类型:';
echo settype($num,'integer');
echo'<p>';
echo'输出变量$num的值:'.$num;
?>
</body>
</html>
看到了吧,如果直接输出(强制转换后的类型)源数据,那么源数据是不改变的
而是用settype时,源数据的数据类型就发生了改变,而且settype成功时返回1
如果字符型要转换为数字型,判断第一个是不是字符,如果不是,输出0
如果是,只从开头截取到最后一个满足要求的字符
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>