close
Simple PHP Blog
英文官網:http://www.simplephpblog.com/
中文網站:http://www.crazyshow.idv.tw/sblog/
相關網站:http://rt.openfoundry.org/Foundry/Project/index.html?Queue=211 (Simple PHP Blog 正體中文與補強計畫)

  一個不用資料庫的簡單式部落格,不管是Linux或者是Windows,只要可以跑PHP的都行,不過在試用時發現若是用繁體中文語系,有關日期的部份就都會變成亂碼,經過對程式比較熟悉的同事找問題,發現應該是程式中日期時間是直接去抓取系統的預設值,而程式對語系的處理都是用UTF-8,但在繁體Windows中都是以Big5為主,所以才會產生亂碼。

解決方式是把\languages\zh_chinese下的strings.php用convertz轉成big 5後再改裡面的
$lang_string['html_charset'] = 'UTF-8';
$lang_string['php_charset'] = 'UTF-8';
變成
$lang_string['html_charset'] = 'BIG5';
$lang_string['php_charset'] = 'BIG5';
就可以解決這個亂碼問題,不過相對的也破壞了原本程式都是用UTF-8的美意
,不知道這樣個問題是否是當初編寫程式上沒有考慮到這樣的狀況還是原本這個程式就有一定限制的環境才可以使用,而我卻沒有去注意到這個訊息?

另外一個網友的解法,不過選單會變程英文的!
From: Http://blog.minyen.twbbs.org

If you bulid your Simple PHP Blog in windows system and update SPB to 0.4.9 you may encouter a problem in date encoding.

Here's a simple solution.

rename languages/zh_chinese/strings.php to string.php.bak

copy languages/english/strings.php to languages/zh_chinese/strings.php

edit languages/zh_chinese/strings.php

replace
// Language: English
$lang_string['language'] = 'english';
$lang_string['locale'] = array('en_US', 'us');
$lang_string['rss_locale'] = 'en-US'; // New 0.4.8

// ISO Charset: ISO-8859-1
$lang_string['html_charset'] = 'ISO-8859-1';
$lang_string['php_charset'] = 'ISO-8859-1';

to

// Language: Traditional Chinese
$lang_string['language'] = 'chinese';

$lang_string[ 'locale' ] = array('zh_TW.UTF-8','cht','chinese-traditional');
$lang_string['rss_locale'] = 'zh-TW'; // New 0.4.8

// ISO Charset: UTF-8
$lang_string['html_charset'] = 'UTF-8';
$lang_string['php_charset'] = 'UTF-8';
arrow
arrow
    全站熱搜

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