1. 程式人生 > >return和die(exit)的區別

return和die(exit)的區別

1.在指令碼中

他倆的區別不大,都會終止指令碼執行,只要出現了return或die,下面不管有多少程式碼,都不會在執行。可以有返回值

<?php
header('content-type:text/html;charset=utf-8');
$m = 5;
print_r($m);
die('error');//中止指令碼執行   或用exit(),return;
echo $m;//會輸出error

2.在函式中

return只會終止函式本身,die會終止指令碼執行

(1)return後面可以加返回值

<?php
header('content-type:text/html;charset=utf-8');
function A(){
	echo '正在執行函式';
	  return;//函式終止,可以返回值 
	  echo 'aaa';

}
echo '開始呼叫函式','<br>';
$a=A();
echo '<br>';
echo $a;
echo '<br>';
echo '結束呼叫函式';

以上程式碼輸出的是:

(開始呼叫函式

    正在執行函式

    結束呼叫函式)並不會輸出aaa

(2)如果是以下程式碼

<?php
header('content-type:text/html;charset=utf-8');
function A(){
	echo '正在執行函式';
	  die(exit);//函式終止,可以返回值 
	  echo 'aaa';

}
echo '開始呼叫函式','<br>';
$a=A();
echo '<br>';
echo $a;
echo '<br>';
echo '結束呼叫函式';

則會輸出

(開始呼叫函式
正在執行函式)

die(exit)不論出現在哪裡,比如出現在函式裡,呼叫完函式以下的指令碼也不會執行