perl中or die 的原理

2021-06-19 01:36:36 字數 422 閱讀 5072

經常看到這樣的語句:

$file = fopen($filename, 'r')   or die("抱歉,無法開啟: $filename");

or在這裡是這樣理解的,因為在php中並不區分資料型別,所以$file既可以是int也可以bool,所以這樣的語句不會報錯。但其處理過程可能有些朋友不大明白。

其實在大多數的語言中, bool or bool這樣的語句中,如果前乙個值為真後乙個值就不會再判斷了。這裡也是的,所以如果fopen函式執行正確的話,會返回乙個大於0的int值(這其實 就是「真」),後面的語句就不會執行了。如果fopen函式執行失敗,就會返回false,那麼就會判斷後面的表示式是否為真了。

結果執行了die()之後,不管返回什麼,程式都已經停止執行了,並且顯示指定的出錯資訊,也就達到了除錯的目的。

就這樣。:)

**

perl 1 perl中的數字

下面是在perl中的要點記錄 1 在perl中只有雙精度浮點數,也就是我們常說的double。在perl中我們看到的整數和浮點數,只是我們看的樣子和形式不同而已,其實在perl的內部它全部作為雙精度浮點數來運算。2 浮點數可以以十進位制的指數來記,符號是 e 並不區分大小寫,如 1.2e20,1.2...

perl 中的引用

perl 語言中的引用共分為兩類 宣告引用時只需要在物件的前面加上反斜槓 第一列是陣列的引用 示例 my array 1,2,3 my array ref array 第二種是雜湊的引用 示例 my hash 1,2,3,4 my hash ref hash 通過引用去訪問對應的值,通過 操作符 陣...

perl中的執行緒

1 直接執行子程式,按順序由上到下執行 乙個執行緒內執行 sub test0 test0 print main 0 n print main 1 n 結果 test0 0 test0 1 finish test0 main 0 main 1 2 用create建立執行緒後的執行過程 use thre...