我第一次遇到这样的问题。有用;
function translate($google) {
$en = array(
"Mother", "Father"
);
$de= array(
"Mutter", "Vater"
);
$s = str_replace($en,$de,$google);
return $s;}
但这不起作用
$en = array(
"Mother", "Father"
);
$de= array(
"Mutter", "Vater"
);
function translate($google, $en, $de) {
$s = str_replace($en,$de,$google);
return $s;
}
我在哪里犯错误?
上次我会像这样使用它;
echo translate(fonkfonk(str_replace(array("\n","\r","\t"),array("","",""),file_get_contents($cache))));
你的问题是你在调用它时没有为你的函数提供$en
和$de
的值。
$en = array("Mother", "Father");
$de = array("Mutter", "Vater");
function translate($google, $en, $de) {
$s = str_replace($en,$de,$google);
return $s;
}
echo translate(fonkfonk(.....)); // error because translate() does not know what
// $en and $de are supposed to be
您只提供fonkfonk()
函数的结果作为第一个参数($google
)并且不提供第二个和第三个参数。
你应该做的是在函数调用中提供$en
和$de
的值,或者在定义函数时导入它们:
function translate($google, $en, $de) {
$s = str_replace($en,$de,$google);
return $s;
}
$en = array("Mother", "Father");
$de = array("Mutter", "Vater");
echo translate(fonkfonk(.....), $en, $de);
要么:
$en = array("Mother", "Father");
$de = array("Mutter", "Vater");
function translate($google) use ($en, $de) {
$s = str_replace($en,$de,$google);
return $s;
}
echo translate(fonkfonk(.....));