2016年10月29日 星期六

error_log寫入及php tag表頭支援的php版本

        之前寫php的時候完全沒注意warning,寫出了很多不嚴謹的code,不過當時也沒特別在意,想說只是顯示一下而已,在參數裡面改成看不見就好了。

        沒想到最近看到切割空間竟然快沒了,可是切了40g啊!一個中小系統的規模而已,在注意看了一下,centos6環境下的/var/log/httpd/error_log竟然足足佔了38G,稍微看了幾行發現,這不都是之前在php上的warning嗎?!

        全部都記錄下來了,而因為數量太多,才過了幾十天就無法控制了,於是趕緊把warning打開,先把一些error_log裡面記錄看起來很多的warning休一下,再來放置個一兩天,果然error_log的大小增長緩慢許多。

        這邊要注意一下,當我們把error_log從裡面刪除之後,要記得重啟httpd,像在centos就是:

service httpd restart

        伺服器才會繼續寫error_log出來。




        今天也同時注意到一個php版本轉換的tag差異,以往我們在html tag裡面要echo php的值的時候,我們都會像這樣寫:

<div><?php echo $myValue; ?></div>

       不過php在5.4.0之後,你再也完全不用擔心是否調整了php.ini裡面的short_open_tag參數,可以毫無顧忌地使用下列程式碼:

<div><?= $myValue; ?></div>

        但相對而言,如果你沒有辦法完全掌握你未來專案正式上線之後的環境,那麼使用最原始的<?php echo 還是最安全的,如果版本是5.3.x甚至更舊,而且也沒有調整任何參數,那網頁上將直接顯示出來div裡面所有的東西,也就是完整的tag。



參考資料:

http://php.net/manual/en/migration54.new-features.php

沒有留言:

張貼留言