可能重复: PHP中的die()和PHP()有什么不同?
我完全搞不懂die和exit的区别。
大多数程序员都是这样使用die的。
$link = mysql_connect('localhost', 'mysql_user', 'mysql_password'); //don't see mysql_* problem it is just example
if (!$link) {
die('Could not connect: ' . mysql_error());
}像这样使用exit
$filename = '/path/to/data-file';
$file = fopen($filename, 'r')
or exit("unable to open file ($filename)");根据那里的功能,我不认为有什么不同,因为两者都终止了脚本的执行。
我的问题是
1)在这些例子中,我是否可以将模具与出口互换,反之亦然? 2)以及两者之间的差异。
干杯..。
发布于 2012-10-03 06:21:45
根据下模的说法,这相当于退出。所以是的,你可以交换它们。
发布于 2012-10-03 06:38:16
当使用命令行时,
die("Error");将打印到“错误”到STDOUT,并使用错误代码0退出。
如果要使用错误代码1退出,则必须:
fwrite(STDERR, "Error");
exit(1);在从命令行或shell脚本执行php脚本时,它可能很有用,您希望查看脚本是否以非零退出代码结束。
这是我能想到的一个不同之处。
P.S.以上信息来自php.net/exit
发布于 2012-10-03 06:35:22
die()函数和exit()函数之间没有区别。他们都是一样的,工作也一样。
同样的问题是,如果这两个函数是相同的,那么php为什么保留它们。这两个函数都是彼此函数的别名。
由于API和保持向后兼容性,两个函数都保持不变。
这里还有一个例子:
is_int()和is_integer()也是一样的。
PHP中有很多函数,您可以使用多个名称调用这些函数。在某些情况下,在多个名称中没有首选名称,例如,is_int()和is_integer()同样好。但是,有些函数由于API清理或其他原因而更改名称,旧名称仅作为别名保存,以实现向后兼容性。使用这类别名通常是个坏主意,因为它们可能会被淘汰或重命名,这将导致不可移植的脚本。提供此列表是为了帮助那些想要将旧脚本升级到更新语法的人。
您可以在以下URL上找到别名函数的完整列表:
http://php.net/manual/en/aliases.php
愿这对你有帮助:)
https://stackoverflow.com/questions/12702875
复制相似问题