簡體   English   中英

修剪,小寫,大寫單詞並保存在MongoDb中

[英]Trim, lower case, upper case words and save in MongoDb

我正在嘗試將用戶提供的字符串保存到MongoDb中,但是在保存以進行標准化之前要這樣做:

ucwords(mb_strtolower(trim($name)))

但這使MongoDb拋出MongoException並帶有“æøå”之類的字符。

我以為“ mb_”可以使函數與UTF-8一起正常工作? 使用普通strtolower可以解決此問題。

謝謝

如果您使用的是PHP 5.4,則默認字符集已從ISO-8859-1更改為UTF-8。

除非您從$ name編碼的不是ISO-8859-1或UTF-8,否則strtolower應該為您做得完美

MongoDB始終期望使用UTF-8字符串。

正如@JvdBerg所說,這取決於您的PHP,但是默認情況下,PHP 5.4之前的版本不是UTF-8,因此您需要使用iconvutf8_encode來“編碼”字符串。 您很可能使用的是舊的PHP,而該字符串實際上是ISO編碼的。

mb_函數在執行轉換時不會考慮字符串,只會考慮多字節字符。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM