return和die(exit)的區別
阿新 • • 發佈:2018-11-22
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)不論出現在哪裡,比如出現在函式裡,呼叫完函式以下的指令碼也不會執行