我必须用php代码替换德语“ Umlaute”的HTML格式 我这样做是这样的:
Private function replaceHTMLEntities(&$str){
$str = str_replace('Ä',chr(196),$str);
$str = str_replace('Ö',chr(214),$str);
$str = str_replace('Ü',chr(220),$str);
$str = str_replace('ä',chr(228),$str);
$str = str_replace('ö',chr(246),$str);
$str = str_replace('ü',chr(252),$str);
$str = str_replace('ß',chr(223),$str);
}
php中是否有任何内置函数可以缩短此代码?
答案 0 :(得分:0)
我不确定内置函数是什么,但是至少您可以使用str_replace
并将参数作为数组来减少和优化代码:
private function replaceHTMLEntities(&$str){
$search = ['Ä', 'Ö', 'Ü']; // and others...
$replace = [chr(196), chr(214), chr(220)]; // and others...
$str = str_replace($search, $replace, $str);
}
提示:如果可能,请勿使用引用传递。调试起来很困难,更改也不明显。