$a = $_GET['a'];
$d = array("æ", "ø", "å", "Æ", "Ø", "Å");
$e = array("æ", "ø", "å", "Æ", "Ø", "Å");
$new = str_replace("$d","$e","$a");
echo $new;
有谁能告诉我这里我做错了什么。如果我写的话,它的效果非常好:
$a = $_GET['a'];
new = str_replace("ø","ø","$a");
echo $new;
然后至少更换了“ø”,但我真的想用两个阵列来做,而不是一次更换一个字母,6次......
答案 0 :(得分:5)
$new = str_replace($d, $e, $a);
您传递的是变量,而不是包含变量的字符串。
如果比较此代码中的输出
$a = array(123);
var_dump($a);
var_dump("$a");
你会注意到,第一个是一个数组,第二个是一个字符串,其中数组被隐式地转换为字符串。