web-dev-qa-db-ja.com

PHP-どちらが良いですか?

私は次のケースでより良いオプションであると知りたいです:

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つのオプションのうち、どれが最適ですか?

44
q0987

(関数内ではなく)グローバルスコープ内でexitreturnを使用しているため、動作はほぼ同じです。

この場合の違いは、ファイルがinclude()またはrequire()を介して呼び出された場合に表示されます。 exitはプログラムを終了し、returnは制御を呼び出し元のスクリプト(includeまたはrequireが呼び出された場所)に戻します。

70
Aziz

他のスクリプトが実行を継続できるように、私はreturn()メソッドを使用する傾向があります。これにより、別のスクリプトを使用してこのスクリプトを呼び出す場合、常に処理を停止するのではなく、ファイルが大きすぎる場合に対処するためにエラー処理を行うことができます。

7
Jeffrey Blake

依存します...スクリプトがメッセージを出力する以外に何もしないことを意図していて、その後スクリプトに何もさせたくない場合、exit()は動作します。それ以外の場合は、returnを使用します。

6
Crayon Violent

Exitは、die()などのプログラムを終了します。 手動

4
Iznogood