0

所以我有这个 $_POST 我试图检查它是否已设置但是当我这样做时,它给了我标题中的错误。

$_POST 包含数组中的数组。所以这可能是原因。如果复选框被选中,则 $_POST 具有价值,否则不会发布任何内容。

因此 $_POST 将包含的示例:

array() => 'item-one' => array( 102 ) => 'on'

我在 PHP 中使用它:

function testing( $db_id ) {
    $fields = array( 'one', 'two' );

    foreach( $fields as $field ) {
         if ( isset( $_POST['item-' . $field][$db_id] ) ) {
              // do something
         }
    }
}

感谢您的关注。

4

2 回答 2

1

尝试这个,

foreach( $fields as $field ) {
     if (isset($_POST['item-'.$field]) and in_array($db_id,$_POST['item-'.$field])){
          // do something
     }
}

或者,您可以尝试一下,

$fields=array('item-one','item-two')
foreach( $fields as $key=>$field ) {
     if (isset($_POST[$field]) and in_array($db_id,$_POST[$field])){
          // do something
     }
}
于 2013-07-12T05:15:07.767 回答
0

尝试使用in_array

$fields = array( 'one', 'two' );

foreach( $fields as $field ) {
     if ( in_array($_POST['item-' . $field][$db_id], $fields) ) {
          // do something
     }
}
于 2013-07-12T05:14:03.950 回答