【问题标题】:Array Fails To Use String Parameter数组无法使用字符串参数
【发布时间】:2013-11-02 00:53:46
【问题描述】:

我花了最后 20 分钟试图弄清楚为什么在使用 AJAX 时,我的字符串值无法工作。

我有一个表单,当提交时,它会将数据发送到 evo.php,并带有 $_GETid,比如 "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?

标签: php ajax arrays variables


【解决方案1】:

变量作为字符串传递,因此$id 实际上是""01""。我很确定我var_dump()'d 几乎所有其他事情。谢谢!

【讨论】:

    猜你喜欢
    • 2010-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-06-16
    • 1970-01-01
    相关资源
    最近更新 更多