【发布时间】:2013-11-02 00:53:46
【问题描述】:
我花了最后 20 分钟试图弄清楚为什么在使用 AJAX 时,我的字符串值无法工作。
我有一个表单,当提交时,它会将数据发送到 evo.php,并带有 $_GET 值 id,比如 "01"。
我做的第一件事是通过$id = $_GET['id']; 将$_GET 值分配给局部变量$id,这没有错。我的代码继续声明一个数组:
$evo = array(
"01" => "Milk",
"02" => "Fruit",
"03" => "Other"
);
现在如果我echo $id; 我将得到"01" 的确切回复。但是,如果我尝试echo $evo[$id];,我会得到回复:Undefined index: "01"。这是有道理的,如果echo $evo["01"]; 没有给我回复"Milk"。
我不明白如何在$evo[] 中调用$id 会引发错误?
我尝试将值更改为具有完全相同结果的整数。
我没有包含 AJAX 的唯一原因是因为我目前没有返回任何内容,只是尝试使用 $id 从 $evo[] 获取值。
【问题讨论】:
-
我可以使用与您使用的完全相同的代码 (d.pr/n/2mO3) 让它在这里工作。你确定
$id包含的正是"01"字符串吗?调用var_dump将其作为参数传递并在此处显示输出。 -
它适用于我检查这里PHP fiddle,仔细检查
$evo -
你说当你
echo $id时,你得到"01"的确切响应,难道你也传递了引号以及01?