2010-12-05 41 views
2

我想在我的Code Igniter購物車的'名稱'中包含unicode字符(更具體地說,泰米爾文字)。我找到了this的例子。我嘗試以下,從而使正則表達式可以匹配任何東西:CodeIgniter - Cart類中的'name'正則表達式匹配是否支持Unicode?

$this->cart->product_name_rules = '.+'; 
$this->cart->product_name_rules = '.*'; 
$this->cart->product_name_rules = '.'; 

但對於這一切,我得到錯誤「無效的名稱提交作爲產品名稱:சும்மாவாசொன்னாங்கபெரியவங்க名稱只能包含的α-數字字符,破折號,下劃線,冒號和空格「在我的日誌中。

此外,認爲它可能是由於Unicode支持,我試過如下:

$this->cart->product_name_rules = '\p{Tamil}'; 

,但無濟於事。如果在這裏有什麼問題,你能指點嗎?

回答

0

嘗試將每個泰米爾字符單獨添加到您的正則表達式中。我曾在輸入鍵做這個特殊字符:

if (! preg_match("/^[a-z0-9àÀâÂäÄáÁãÃéÉèÈêÊëËìÌîÎïÏòÒôÔöÖõÕùÙûÛüÜçÇ’ñÑß¡¿œŒæÆåÅøØö:_\.\-\/-\\\,]+$/i", $str)) 
    { 
     exit('Disallowed Key Characters.'); 
    } 
+1

謝謝。嘗試一下和類似的解決方案。目前正面臨一個切題,但讓你再次知道這個結果。再次感謝。 – Mouli 2010-12-09 07:15:19

0

Here他張貼了他是怎樣設法保存笨1.7.2的購物車的cyrilic字符。