PHP - 退出或返回哪个更好?

时间:2010-08-14 15:49:25

标签: php terminate

我想知道以下情况,这是一个更好的选择:

在PHP脚本中,如果$fileSize变量大于100,我会停止脚本;

案例I:

<?php
if ( $fileSize > 100 )
{
   $results['msg'] = 'fileSize is too big!';
   echo json_encode( $results );
   exit();
}

案例II:

<?php
if ( $fileSize > 100 )
{
   $results['msg'] = 'fileSize is too big!';
   exit( json_encode( $results ) );
}

案例III:

<?php
if ( $fileSize > 100 )
{
   $results['msg'] = 'fileSize is too big!';
   return( json_encode( $results ) );
}

上述三(3)个选项中哪一个最好?

4 个答案:

答案 0 :(得分:67)

由于您在全局范围内(不在函数内)使用exitreturn,因此行为几乎相同。

如果您的文件是通过include()require()调用的,则会出现这种情况的不同之处。 exit将终止该计划,而return会将控制权移回调用脚本(其中includerequire被调用)。

答案 1 :(得分:7)

我倾向于使用return()方法,以便其他脚本可以继续执行。这样,如果您使用另一个脚本来调用此脚本,它可以执行错误处理来处理文件太大的情况,而不是总是停止执行。

答案 2 :(得分:5)

这取决于...如果您的脚本除了输出消息之外什么也不做,而您不希望脚本在之后执行任何操作,则exit()将起作用。否则,请使用return。

答案 3 :(得分:4)

退出终止程序,如die()。 manual