-2

我有正在发布到我的表单处理器的动态字段名称。名称的格式类似于editnote|9. |9是要编辑的注释的 ID。如果我使用此代码:

foreach($_POST as $key) {

    $editcheck = explode('|', $key);

    if($editcheck[0] == 'editnote') {
        echo $editcheck[1];
    }
}

我可以正确获取 9 的 ID,但无法获取值。我努力了:

foreach($_POST as $key => $value) {

    $editcheck = explode('|', $key);

    if($editcheck[0] == 'editnote') {
        $clsCNA->updatenote($editcheck[1], $_POST[$key]);
    }
}

但是使用这段代码,我只能获取值而不是键名来获取我想要编辑的笔记 ID。

所以基本上,我想foreach($_POST as $key => $value)以某种方式让我得到它的名字,$key这样我就可以分解它来得到 ID 号。

有任何想法吗?

我正在尝试像这样发送到我的班级:

$clsCNA->updatenote(ID From key name, Value of key)
4

1 回答 1

2

如果我使用此代码:

foreach($_POST as $key) {

    $editcheck = explode('|', $key);

    if($editcheck[0] == 'editnote') {
        echo $editcheck[1];
    }
}

我可以正确获得9的ID ...

foreach($_POST as $key => $value) {

切 ...

由于PHP 的 foreach循环使用一个变量,因此只会获取数组的值。选择的确切名称并不能确定变量的内容。类似地通过方法调用找到。这会将放入$key变量中。

在第二个示例中,您使用的是$key => $value语法。这里循环将Key放入$key变量中,将Value放入$value变量中。

这意味着您的$key变量在两个示例中都不相同。在一个中,它保存数组的Values ,在另一个中保存Keys

于 2013-10-11T17:14:49.653 回答