2012-08-29 21 views
0

我需要檢查一個字符串是否符合代碼頁1250。檢查字符串是否符合代碼頁1250

我可以寫到MySQL,做這樣的檢查:

select id,name from test where name <> CONVERT(name USING cp1250); 

這將發現不符合要求的字符串。

我能以某種方式在PHP中執行相同的操作嗎?

+0

如果你能在MySQL中做到這一點,那麼就使從PHP到MySQL的呼叫。 – jarchuleta

+1

我想避免往返數據庫,因爲我經常需要這樣做。 – Sharkie

回答

0

試試這個。

mb_convert_case($name, MB_CASE_LOWER, "Windows-1251") 

也許

mb_convert_encoding($name,"Windows-1251") 
+0

實際使用的函數是[mb_check_encoding()](http://php.net/manual/en/function.mb-check-encoding.php)。但是mbstring不支持Windows-1250,而AFAIK Windows 1250!= Windows 1251. – Benjamin

+0

我的理解是Windows 1251已經足夠接近1250.就像90%的匹配一樣。 – jarchuleta

+0

我覺得他不是在尋找90%的比賽... – Benjamin

相關問題