Подтвердить что ты не робот

PHP - выход или возврат, который лучше?

Я хотел бы узнать в следующем случае, который является лучшим вариантом:

В PHP script, если переменная $fileSize больше 100, я останавливаю script;

Случай 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) опций выше лучше?

4b9b3361

Ответ 1

Поскольку вы используете exit и return в глобальной области (не внутри функции), тогда поведение почти одинаковое.

Разница в этом случае появится, если ваш файл вызывается через include() или require(). exit завершит выполнение программы, а return вернет управление вызывающему script (где был вызван include или require).

Ответ 2

Я хотел бы пойти с методом return(), чтобы другие скрипты могли продолжать выполняться. Таким образом, если вы когда-либо используете другой script для вызова этого, он может выполнять обработку ошибок, чтобы иметь дело с случаем, когда файл слишком велик, а не всегда останавливать выполнение.

Ответ 3

Выход завершает программу, например die(). manual

Ответ 4

Это зависит... если ваш script предназначен только для вывода сообщения, и вы не хотите, чтобы script что-то делал после этого, функция exit() будет работать. В противном случае используйте return.