替换特殊字符php
我现在有个问题。当有人在订购包含字符“æ”的东西时,它会将其变成“α”,这会破坏mysql查询,并在那里结束句子。举个例子,我得到了:替换特殊字符php,php,string,Php,String,我现在有个问题。当有人在订购包含字符“æ”的东西时,它会将其变成“α”,这会破坏mysql查询,并在那里结束句子。举个例子,我得到了: #55*2*195*1 - 1,%%%%38. Burger dobbelt %%%%Kommentar%%%%Burgeren skal và¦re med friske agurker i stedet for syltede%%%%og uden ost. Pॠforhà¥nd tak %%%%%%%%100. Lasagne %%%%Dressing
#55*2*195*1 - 1,%%%%38. Burger dobbelt %%%%Kommentar%%%%Burgeren skal và¦re med friske agurker i stedet for syltede%%%%og uden ost. Pॠforhà¥nd tak %%%%%%%%100. Lasagne %%%%Dressing%%%%Ingen dressing,*;;124.20;;Niklas Smietana;;;;7;;*#
但当它将其插入数据库时,结果如下所示:
#55*2*195*1 - 1,%%%%38. Burger dobbelt %%%%Kommentar%%%%Burgeren skal v
就这样结束了。
所以我想做的是,我想替换“字符串”中的每一个特殊字符,比如“æ”、“ø”、“å”、“ü”、“ö”等等,所以它变成“ae”、“oe”、“aa”、“u”、“o”。
我试过用Stru_替换,但不行
我的代码:
$product_name = $row['product_names'];
$product_name = str_replace("ø", "oe", $product_name);
$product_name = str_replace("É", "É", $product_name);
$product_name = str_replace("Ã", "à", $product_name);
$product_name = str_replace("¿", 'oe', $product_name);
$product_name = str_replace("¾", 'ae', $product_name);
$product_name = str_replace("æ", 'ae', $product_name);
$product_name = str_replace("Œ", 'aa', $product_name);
$product_name = str_replace("å", 'ae', $product_name);
$product_name = str_replace("š", 'oe', $product_name);
$product_name = str_replace("Ÿ", 'u', $product_name);
这里有人能解决这个问题吗
提前感谢。您应该使用或来防止mysql注入并转义特殊字符。您的文件字符集和db中的排序规则是什么?请看,您能否给出一个示例,因为当我尝试:$product\U name=utf8\U encode($product\U name);它只是将行编辑为:#55*2*195*1-1、%%38。汉堡包带%%%%Kommentar%%%%%Burgeren skal vÃre med friske agurker i stedet for syltede%%%og uden ost。P¥forh¥nd tak¥100。千层面%%%%调味汁%%%%Ingen调味汁,*;;124.20;;尼古拉斯·斯米塔纳;;;;7;;*#@我编辑了我的帖子,删除了我写的utf8_编码答案。