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

Posted

技术标签:

【中文标题】PHP - 退出或返回哪个更好?【英文标题】:PHP - exit or return which is better? 【发布时间】:2011-03-29 21:11:03 【问题描述】:

我想知道在以下情况下哪个是更好的选择:

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

案例一:

<?php
if ( $fileSize > 100 )

   $results['msg'] = 'fileSize is too big!';
   echo json_encode( $results );
   exit();

案例二:

<?php
if ( $fileSize > 100 )

   $results['msg'] = 'fileSize is too big!';
   exit( json_encode( $results ) );

案例三:

<?php
if ( $fileSize > 100 )

   $results['msg'] = 'fileSize is too big!';
   return( json_encode( $results ) );

以上三 (3) 个选项中哪一个是最好的?

【问题讨论】:

【参考方案1】:

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

如果您的文件是通过include()require() 调用的,则会出现这种情况的差异。 exit 将终止程序,而return 将控制权交还给调用脚本(调用了includerequire)。

【讨论】:

【参考方案2】:

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

【讨论】:

【参考方案3】:

Exit 像 die() 一样终止程序。 manual

【讨论】:

【参考方案4】:

这取决于...如果您的脚本只打算输出一条消息,并且您不希望脚本在之后执行任何操作,那么 exit() 将起作用。否则,使用返回。

【讨论】:

以上是关于PHP - 退出或返回哪个更好?的主要内容,如果未能解决你的问题,请参考以下文章

退出我的应用程序并返回后我应该调用哪个生命周期函数

获取 JavaScript 以识别在 HTML 下拉菜单中选择了哪个选项并返回运行 SQL 查询的 PHP 函数

执行函数取决于哪个异步调用首先返回

SqlDataReader 与 SqlDataAdapter:返回 DataTable 的性能哪个更好?

PHP,静态变量或私有变量哪个更好?

PHP Sessions 或 cookie,哪个更好? [复制]