扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
请问为什么先输出checkInter(3.5)?
PHP code
<?php
function checkInter($num){
if ($num>1){
return checkInter($num-1);
}else if($num<0){
return checkInter((-1)*$num=1);
}else{
if ($num>0 and $num<1){
echo "不是整数";
}else{
echo "是整数";
}
}
}
echo "<b>3.5是整数吗?</b>".checkInter(3.5);
?>
得到的结果是:
不是整数 <b>3.5是整数吗? </b>
而不是:
<b>3.5是整数吗? </b>不是整数。
你用.连接前面( <b>3.5是整数吗? </b>)语句 就等于你echo的成一句话了,它要完成就一句话之后在输出内容,所以先调用了函数之后 才完成了这一句话,才能输出( <b>3.5是整数吗? </b>)
你用,隔开试试,它会先输出后调用
会先执行function ,function中视echo 而不是return。
你可以修改函数中的echo 为return 或者echo " <b>3.5是整数吗? </b>";echo checkInter(3.5);
另外你的这个函数是干吗用的?就是为了判断是否是整数?这样写我觉得很不合理.你可以用 is_int 来判断是否是整数.
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。
现场直击|2021世界人工智能大会
直击5G创新地带,就在2021MWC上海
5G已至 转型当时——服务提供商如何把握转型的绝佳时机
寻找自己的Flag
华为开发者大会2020(Cloud)- 科技行者