close

2008/06/06 修正

最近設計的網站, 原本用PHP5開發, 沒想到接近完工時, 才發現客戶原有的虛擬主機空間還在用PHP4,大部分的PHP指令好像都正常, 不過今天出現了日期顯示的錯誤。

當初為了顯示月跟日(M-D), PHP5的日期顯示也是拼湊出來的, 不過總是解決了問題。

PHP5的日期輸出:

echo date_format(new DateTime($row_rsNews['date_start']),"m-d");

其中的"m-d"是輸出的格式, 輸出結果為"04-12", "05-01"......

 

但是date_format()在PHP4還沒出現, PHP5之後才開始支援, 所以不能使用。

所以PHP4反而用了最簡單的輸出方式, 子字串substr()函數

echo substr($row_rsNews['date_start'],5,5);  

 同樣可以輸出"04-12", "05-01" 這樣的結果。

其實當初PHP5也可以用這樣的方式, 不過考慮到未來不同的日期格式化輸出, 還是用了比較麻煩的方式, 比較特別的是, 這樣的方式是不能用的:

 echo date_format($row_rsNews['date_start'],"m-d");

非得用new DateTime()產生一個日期物件才可以, 其中new DateTime在PHP5有一個比較建議的替代函數 date_create(), PHP5建議用來替代datetime(), 不過同樣只有在PHP5之後才支援。

 

話說回來, 現在在PHP網站上的文件已經找不到DateTime()函數的說明, 那當初我是打哪找來這個的?! 沒記錄下來, 腦筋就是不行了 = =

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Jikky 的頭像
    Jikky

    咖啡戒斷症候群

    Jikky 發表在 痞客邦 留言(1) 人氣()