专业的人干专业的"事",切莫用exit来干输出的事
在程序测试的过程中为了图片方便经常少写一行echo的代码来运行查看某个变量,在绝大部分的情况下我们传的都是非整数类型的变量,比如字符串等,所以在这样的情况下用exit来输出变量的值是能看到输出结果的,但是如果是整数类型的情况就不一样了,下面通过几个实验来说明一下这个问题
第一个实验
实参直接是数字,在类的静态方法中通过exit来输出,结果将输出为空
DB::test(1);
class DB{
public static function test($num){
exit($num);
}
}
第二个实验
实参直接是字符,在类的静态方法中通过exit来输出,结果能够输出字符串
DB::test("1");//里面的数字两边被加上了双引号
class DB{
public static function test($num){
exit($num);
}
}
第三个实验:
实参仍然是数字,不过在类的静态方法中不再通过exit来输出,而是使用echo来输出,并且后面还带了exit()来终止执行,结果是仍然有输出
DB::test(1);
class DB{
public static function test($num){
echo $num;
exit();
}
}
第四个实验
既然静态方法中不能用exit来输出整数类型的变量,那不是静态方法的是否又可以呢?
class DB{
public function test($num){
exit($num);
}
}
$db = new DB();
$db->test(1);
上面这个实验经过测试发现在非静态方法中仍然是不能用exit来输出整数类型的值
第五个实验
既然非静态方法中也不能用exit来输出整数类型的变量,那能不能输出浮点数类型的变量呢?
class DB{
public function test($num){
exit($num);
}
}
$db = new DB();
$db->test(3.1415926);
上面这个实验经过测试发现在非静态方法中可以用exit来输出浮点类型的变量
第六个实验
既然放在类的静态方法或者非静态方法都不行,那么放在函数中又会怎么样呢?
function test($num){
//die($num);//不能
exit($num);//不能
}
test(1);
上面这个实验经过测试发现在函数中还是不能用exit来输出整数类型的值,同时将exit换成die也还是一样不能输出
所以经过上面的五个实验测试,最后总结不难发现,不管是在静态方法中还是非静态方法中或者函数中都不能直接用exit或者die来输出整数类型的变量,只能用echo来输出,至于为什么会这样,我们其实也没有必要去深究,因为exit本来就不是专业干输出的这件事情的,他的主要职责只是用于终止程序运行的,echo才是专业干输出这件事的,这不也正是应了那句话叫专业的"人"干专业的"事"吗!
专业的人干专业的事,切莫用exit来干输出的事
所属栏目:建站技术 更新时间:2020-10-30 点击: 次 文章来源:/jzjs/3527.html
【上一篇】:过滤所有标点符号的函数详解
相关阅读
-
中英文混和的字符串的ASCII与UNICODE编码与解码
//1:获取中英文混合字符的编码(ASCII码与UNICODE码)$str="官网制作:网巢网络";foreach(math($str)as$key=>$value){if(preg_match('/^[x{4e00}-x{9fa5}]+$/u',$value)){//中文,注意中文这里暂时不转换,因为无法通过chr…
了解详情 >>
-
用火狐打开百度一直加载s1.bdstatic.com的解决办法
一直用火狐浏览器,火狐浏览器插件多,很合适网页开发人员使用,以前一直用的好好的,但是今天使用的时候突然发现没有以前好用了,打开百度的官网一直很卡,通过FIREBGU发现在打开百度官网的时候一直会加载s1.bdstatic.com这个网站,无语,怎么打开百度的官网还需要链接s1.bdstatic.com这个网站这个网站吗?难道是百度被黑了,或者是自己的浏览器被…
了解详情 >>
-
手机访问电脑网时自动跳转代码
4G降临,移动网站已经一发不可收拾,pc端和移动端官网并存。如何让别人访问你的pc端的官网直接跳转到移动端的网站呢?各位看官,小二上代码!来了!varurl=window.location.href;varurl_match=/vit=1$/i;if(!url.match(url_match)){if(navigator.userAgent.match(/(…
了解详情 >>
-
为什么小程序的页面有二次跳转时会瞬间显示一下第一次的页面再跳转呢?
为什么小程序的页面有二次跳转时会瞬间显示一下第一次的页面再跳转呢?navigateToredirectToswitchTabtabBar先来看示例代码并且在微信开发者工具上测试下面看示例代码共有三个页面,分别是indexproductshowcartindex的js与wxmlPage({/*跳转到商品详情*/toProductshow:function(ev…
了解详情 >>
-
小程序倒计时wxml与js
小程序倒计时jsPage({data:{windowHeight:654,maxtime:"",isHiddenLoading:true,isHiddenToast:true,dataList:{},countDownDay:0,countDownHour:0,countDownMinute:0,countDownSecond:0,},/…
了解详情 >>
-
小程序列表多个批量倒计时
Page({onShow(){letthat=this;vardates={datetime:[{dat:0,name:'zs'},{dat:6,name:'ls'},{dat:10,name:'ww'}]}//console.log(dates)//数据letlen=dates.datetime.length…
了解详情 >>
