PHP用str_replace()能替換中文漢字嗎?
3 回答

當年話下
TA貢獻1890條經驗 獲得超9個贊
mb_string擴展有沒有打開啊,如果打開的話,可以用雙字節可靠的mb_ereg_replace函數,因為str_replace不是雙字節可靠的函數,
PHP code <? echo mb_ereg_replace("格式","新格式","將中文字符的格式替換"); //輸出 將中文字符的新格式替換 ?>

Smart貓小萌
TA貢獻1911條經驗 獲得超7個贊
可以正常轉換,只不過你的變量誤用了!
$test = str_replace(',', ',',$str); $test=str_replace('。','.',$str);
第一句是將中文逗號轉換為英文逗號,賦值給 $test
第二句呢?為什么后面的變量又是 $str,這樣 $test 自然被再次賦值,僅僅替換了句號
只要將第二句的 $str 替換成 $test 即可
123456789101112131415 | $str ="一直以來,總覺得自己是一顆小草,一顆最不起眼的小草,沒有個性,沒有光芒。就像歌詞中所唱:沒有花香,沒有樹高,我 是一棵無人知道的小草。盡管我知道“尺有所長,寸有所短”的道理,可是,自卑的野草還是會在內心瘋長,悒郁的陰霾還是會在心 間彌漫。有時候,負面情緒壓在心頭,宛如漫漫征程中的負重前行,心靈會很累,很累。"; echo "$str" ; $test = str_replace ( ',' , ',' , $str ); $test = str_replace ( '。' , '.' , $test ); $arr =preg_split ( '/[,.]/' , $test ); echo '<pre>' ; print_r( $arr ); echo '</pre>' ; |

揚帆大魚
TA貢獻1799條經驗 獲得超9個贊
$test = str_replace(',', ',',$str);
$test=str_replace('。','.',$str);
第一句替換后。$str的值不變。。替換后的結果賦值給了$test
導致第二句執行后 $test 只是替換了中文句號
修改方法
將
$test=str_replace('。','.',$str);
修改為
$test=str_replace('。','.',$test);
- 3 回答
- 0 關注
- 4654 瀏覽
添加回答
舉報
0/150
提交
取消