2007/08/20

在連線的時候自動判別 MySQL 版本

由於在 MySQL 4.1 以後,如果是使用 UTF-8 編碼建立的資料表,
都必須在所有查詢前透過
mysql_query('SET NAMES utf8') 這段語法,才能正常運作

如果你的程式必須同時在兩種不同版本的 MySQL 運作
比方說,測試 server 是較新的 4.1.xxx ,
而正式對外營運的 server 則是舊的 3.2.xxx
這時候可以藉由下面這段程式,來自動判別要不要加上 'SET NAMES utf8'

$rs = mysql_query('SELECT VERSION() AS mysql_version');
list($mysql_version) = mysql_fetch_row($rs);
if($mysql_version >= 4) mysql_query('SET NAMES utf8');

參考資料 : PHP Manual

沒有留言:

張貼留言

Web 技術中的 Session 是什麼?

轉載原文:  Web 技術中的 Session 是什麼? 本文目標 在 Web 的世界裡,Session 已經是被廣泛使用的一種技術,大多數的 Web 開發者,肯定都能運用自如。在現今的各類 Web 應用程式的開發框架和工具中,Session 也已經被包裝成容易使用的模...