在Perl中,我需要讀取包含0或1的.conf文件。如果該值爲1,則需要執行if語句中的任何內容。以下是我現在有:爲什麼我的Perl條件總是評估爲真?
open(CONF, "/var/web/onhit.conf");
if(<CONF>) {
print "Hello World!";
}
close(CONF);
if語句的內容始終評估,即使.conf文件中包含了0。我知道文件的理解是正確的,因爲這個代碼可以正確讀取文件:
open(CONF, "/var/web/onhit.conf");
print <CONF>;
close(CONF);
如果文件包含1,則打印1,反之亦然。有人知道我的第一個片段有什麼問題嗎?對不起,我是Perl的n00b。 :-)
的使用注意事項格格的()來刪除的換行符。沒有它,你總是會執行真正的分支,而不管它的值。 – 2009-05-27 21:52:15
行得通。謝謝。儘管你在第一行忘了括號。實際上,我在帖子中說錯了。 if語句總是被評估。現在它已經修復了。 – 2009-05-27 22:18:11