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

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

參考:雖然二者相同,但一般使用中也有細微的選擇性。spa

當傳遞給exit和die函數的值爲0時,意味着提早終止腳本的執行,一般用exit()這個名字。code

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

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

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

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

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

 

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

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

 

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

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):非正常運行致使退出程序;
相關文章
相關標籤/搜索