[轉載][PHP]處理 UTF-8

轉載自: PHP 最佳實踐方法


此章節由 Alex Cabal 撰寫,節錄自 PHP Best Practices 並作為我們 UTF-8 建議的基礎。

這不是開玩笑的,請小心與細心並前後一致地處理它。

PHP 至今在底層仍未支援 Unicode。而有許多方式可以確認 UTF-8 字串的處理是正確的,但通常不容易,還需要從上而下翻遍程序所有階層,從 HTML、SQL 到 PHP。我們將會聚焦在簡短的實踐總結。

繼續閱讀

[PHP]將 Discuz! 由 7.2 昇級至 X3.0 的步驟

主要步驟

Discuz! 沒辦法直接從 7.2 昇級至 X3.0,中間需先昇級至 X1.5 或 X2.0 才行! 主要的昇級步驟如下:

  1. 將 UCenter 昇級至 1.6.0
  2. 全新安裝 Discuz! X2.0,安裝時選「僅安裝 Discuz! X (手工指定已經安裝的 UCenter Server)」
  3. 轉換 Discuz! 7.2 的資料庫至 Discuz! X2.0
  4. 昇級至 Discuz! X3.0

你需要準備的帳號、密碼:

  1. Discuz! 7.2 的資料庫名稱、帳號、密碼
  2. UCenter 創始人的密碼
  3. Discuz! 7.2 的管理者帳號、密碼

昇級前請先至 Discuz! 的管理中心關閉站點。

繼續閱讀

網站套件的「設定檔」安全性問題

這是我在 Facebook 上看到的安全資訊,我覺得很重要,也適用在任何的網站套件上。

以 WordPress 為例,首先,請查看你的 WordPress 目錄下是否有這些檔案:

  • wp-config.php~
  • wp-config.php.2
  • wp-config.php.bak
  • wp-config.php.old
  • wp-config.php.ori
  • wp-config.php.orig
  • wp-config.php.original
  • wp-config.php.sav
  • wp-config.php.save
  • wp-config.php.swp
  • wp-config_php
  • wp-config.php_2
  • wp-config.php_bak
  • wp-config.php_old
  • wp-config.php_ori
  • wp-config.php_orig
  • wp-config.php_original
  • wp-config.php_sav
  • wp-config.php_save
  • wp-config.php_swp

繼續閱讀

解決無法讀取 mcrypt 模組的問題

明明已經用 yum 安裝 php-mcrypt 了,在登入 phpMyAdmin 時,卻出現了錯誤訊息:

無法讀取 mcrypt 模組, 請檢查 PHP 設定

執行 php -v ,也出現:

PHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib64/php/modules/module.so' - /usr/lib64/php/modules/module.so: cannot open shared object file: No such file or directory in Unknown on line 0
; Enable mcrypt extension module

依照錯誤訊息,到 /usr/lib64/php/modules/ 查看,確實沒有「module.so」,倒是有一個 「mcrypt.so」。
繼續閱讀

[PHP]安裝 Roundcube Webmail for IMAP Server

Roundcube Webmail 是一套「僅支援 IMAP」的 Webmail 程式,它結合了 Ajax 技術,讓 UI 變得更容易操作。

Roundcube 是我目前看到最能兼具簡單與華麗的 Webmail,而且它也是少數支援多國語言介面的 OpenSource 之中,能夠把繁體中文翻譯得很不錯的。

它可以自訂的項目很多,不過對於系統的需求頗高,我也是將系統昇級至 Centos 6 之後才安裝來使用。如果你的環境也是使用 IMAP,非常建議使用 Roundcube。
繼續閱讀