我有这段代码,写在PHP中返回foo如果酒吧给出和酒吧,如果foo给出。我尝试过了,看起来没有添加一个catch,所以如果输入了除foo或bar外的任何内容,那么“未知将会是输出”。array_key_exists总是返回false
<?php
echo("<html><body bgcolor='#ffffff'><h1>Welcome</h1>");
$input = $_GET["foobar"];
$array = array(
"foo" => "bar",
"bar" => "foo",
);
function getValue($value) {
if(array_key_exists($value, $array)) {
return $array[$value];
} else {
return "Unknown";
}
}
echo ("Input: ". $input .", Output: ". getValue($input));
echo("<br><br>");
print_r($array);
echo("</body></html>"); ?>
但是,看来该array_key_exists总是返回假的,当我去我的页面或者page.php文件foobar的= FOO或page.php文件foobar的=栏我得到这样的:??
Welcome
Input: bar, Output: Unknown
Array ([foo] => bar [bar] => foo)
或其相反,输入切换到foo但输出保持“未知”。
你的函数对'$ array'一无所知。所以你可能**也**没有激活错误报告/显示完全(这会告诉你有关错误)。 – LSerni 2014-10-30 20:59:38