在使用phpcms V9時,經(jīng)常出現(xiàn)調(diào)用文章時間標(biāo)簽會顯示1970年的問題,雖然不知道真正的原因,但我找到了解決方法。方法很簡單,使用php strtotime() 函數(shù)即可
strtotime() 函數(shù)將任何英文文本的日期時間描述解析為 Unix 時間戳。
代碼如下:
{date('Y',strtotime($updatetime))} 大寫Y顯示 2013, 小寫 y 則顯示 13
{date('M-D',strtotime($updatetime))} 大寫為英文月日, 小寫為數(shù)字月日
{date('Y',time($updatetime))} 獲取當(dāng)前時間戳
另外解釋下phpcms標(biāo)簽里的updatetime和inputtime標(biāo)簽:
①updatetime是更新時間(也叫修改時間,就是后臺的文章列表看到的時間);
②inputtime是第一次寫文章時的發(fā)布時間(就是添加文章或者修改文章時縮略圖下方的時間)。
一般情況下,發(fā)布時間不會自動變動,但更新時間則會隨著文章修改而變動。我們在前端頁面寫標(biāo)簽的時候,一般也都寫發(fā)布時間,這樣不會造成去年寫的文章,修改后變成今年的文章。當(dāng)然,如果寫更新時間其實問題也不大。
如果還是不行可以參考下面的方法:
PHPCMS發(fā)布時間1970年01月01日的解決方法
在新聞內(nèi)容頁調(diào)用“{tag_內(nèi)容頁相關(guān)信息}”時在前臺顯示發(fā)布時間都是1970年01月01日,經(jīng)過對標(biāo)簽?zāi)0宓牟榭?,沒有發(fā)現(xiàn)問題,后再仔細(xì)查看標(biāo)簽設(shè)置,發(fā)現(xiàn)標(biāo)簽是“ 通過自定義SQL調(diào)用”的,而原來自定義SQL的語句是:
代碼如下:
SELECT DISTINCT c.contentid,c.title,c.style,c.url FROM `phpcmscom_content` c,`phpcmscom_content_tag` t WHERE c.contentid=t.contentid and c.`status`=99 AND t.`tag` IN(".get_sql_in($r[keywords]).") ORDER BY c.contentid DESC
并沒有發(fā)布時間的執(zhí)行函數(shù),只需增加發(fā)布時間的函數(shù)即可顯示真實的發(fā)布時間了,更改后的語句為:
代碼如下:
SELECT DISTINCT c.contentid,c.title,c.inputtime,c.style,c.url FROM `phpcmscom_content` c,`phpcmscom_content_tag` t WHERE c.contentid=t.contentid and c.`status`=99 AND t.`tag` IN(".get_sql_in($r[keywords]).") ORDER BY c.contentid DESC
注意添加下面的代碼:
代碼如下:
c.inputtime,
更多信息請查看IT技術(shù)專欄