PHP中exit,exit(0),exit(1),exit('0'),exit('1'),die,return的區別


die('1')  die()和exit()都是中止腳本執行函數;其實exit和die這兩個名字指向的是同一個函數,die()是exit()函數的別名。該函數只接受一個參數,可以是一個程序返回的數值或是一個字符串,也可以不輸入參數,結果沒有返回值。

參考:雖然兩者相同,但通常使用中也有細微的選擇性。

當傳遞給exit和die函數的值為0時,意味着提前終止腳本的執行,通常用exit()這個名字。

echo "1111";
exit(0);
echo "2222";

當程序出錯時,可以給它傳遞一個字符串,它會原樣輸出在系統終端上,通常使用die()這個名字。

$fp=fopen("./readme.txt","r") or die("不能打開該文件");
//這種情況下,如果fopen函數被調用返回布爾值false時,die()將立即終止腳本,並馬上打印
//傳遞給它的字符串,“死前還能說一兩句話”。

同樣的die('1')也通exit('1')一樣,輸出1

echo "begin";
die('1');
echo "end";
//輸出begin1

 

exit(1) 不輸出內容,結束程序

echo "begin";
exit(1);
echo "end";
//輸出begin

 

exit(0) 不輸出內容,結束程序

echo "begin";
exit(0);
echo "end";
//輸出begin

 

exit('0') 輸出0 並結束程序

echo "begin";
exit('0');
echo "end";
//輸出begin0

 

exit('1') 輸出1 並結束程序

echo "begin";
exit('1');
echo "end";
//輸出begin1

 

return 返回值,后續的程序也不執行,值並不輸出

echo "begin";
return 1;
echo "end";
//輸出begin,return的值沒有輸出到屏幕,而是返回給了上一層

 

總結:

return是返回值
die是遇到錯誤才停止
exit是直接停止,並且不運行后續代碼,exit()可以顯示內容。
return就是純粹的返回值了,但是也不會運行后續代碼
exit(0):正常運行程序並退出程序;
exit(1):非正常運行導致退出程序;

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM