您现在的位置:爱折腾>> PHP>>正文内容

关于PHP exit 与 die使用

我相信,搞WEB开发的同学,经常使用exit,而对die语句(对:是语句,不是函数。与函数使用方式一样)不是太清楚。通过查询官方手册:die是exit的别名。也就是说,功能一样。 

大家都知道,exit是结束当前脚本运行的意思。非常暴力,但是,却非常有用。 

但是,有一个问题今天我不得不说。因为,我在这里栽了跟头。 

我有一个HTML页面,页面中有一个ajax请求,然后,我在脚本中通过使用以下代码输出一段信息:

$status = 1;
exit($status);

使用ajax请求,死活得不到这个1。因为,我之前写过很多ajax的代码,也没有出现错误。这个代码方式是我一同事的最爱。通过与我之前写的代码作对比发现,这个exit,是有玄机的。

看我以前的代码方式:

$status = 1;
echo $status;
exit;

因为,echo语句的输出会把任何类型转换为字符串,如果转不了字符串,会把被转的变量的类型转换成字符串输出。

OK。这里我就已经明白。这个exit语句的参数如果是整数,那么就不会以字符串输出到客户端。而我们客户端苦苦等待的是字符串。而且,据C语言里面的exit使用方式,这个exit中的参数是错误状态码。

使用exit输出字符串的时候,一定要传入正式的字符串类型,不然,它不会帮我们自动转型的。正确代码如下:

$status = "1";
exit($status);

总之,结论是:不要使用exit或die输出整型,来节省代码行的方式。因为,不会自动转换成字符串输出。应该使用我上面的第二种方式。

相关文章