I would like to know in the following case which is a better option:
In the PHP script, if the $fileSize
variable is larger than 100, I stop the script;
Case I:
<?php
if ( $fileSize > 100 )
{
$results['msg'] = 'fileSize is too big!';
echo json_encode( $results );
exit();
}
Case II:
<?php
if ( $fileSize > 100 )
{
$results['msg'] = 'fileSize is too big!';
exit( json_encode( $results ) );
}
Case III:
<?php
if ( $fileSize > 100 )
{
$results['msg'] = 'fileSize is too big!';
return( json_encode( $results ) );
}
Which of the three (3) options above is the best?
Since you are using
exit
andreturn
within the global scope (not inside a function), then the behavior is almost the same.The difference in this case will appear if your file is called through
include()
orrequire()
.exit
will terminate the program, whilereturn
will take the control back to the calling script (whereinclude
orrequire
was called).Exit terminates the program like die(). manual
I would tend to go with the
return()
method, so that other scripts can continue executing. That way, if you ever use another script to call this one, it can do error-handling to deal with the case where the file is too large, as opposed to always halting execution.It depends...if your script is intended to do nothing else but output a message, and you don't want the script to do anything afterwards, exit() will work. Otherwise, use return.