Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 数组:如何将值放入数组索引?_Php_Arrays_Multidimensional Array - Fatal编程技术网

Php 数组:如何将值放入数组索引?

Php 数组:如何将值放入数组索引?,php,arrays,multidimensional-array,Php,Arrays,Multidimensional Array,我有带有默认值的文本框。我想将它们放入数组输出中,如下所示 附言:当我创建问题时,我需要在线测验程序中动态选项的预期数组输出(如下所示) if(isset($_POST['btn_submit']) { //code here } <form method="post"> //question 1 array index [0] <input type="text" name="option" value="1"> <input t

我有带有默认值的文本框。我想将它们放入数组输出中,如下所示

附言:当我创建问题时,我需要在线测验程序中动态选项的预期数组输出(如下所示)

  if(isset($_POST['btn_submit'])
  {
    //code here
  }

<form method="post">
  //question 1 array index [0]
  <input type="text" name="option" value="1">
  <input type="text" name="option" value="2">
  <input type="text" name="option" value="3">

  //question 2 array index [1]
  <input type="text" name="option" value="1">
  <input type="text" name="option" value="2">

  <input type="submit" name="btn_submit">
</form>
编辑:


可以使用相同的名称,但仍然可以获得预期的数组值吗?然后,将它们放在一个变量数组中

您需要在名称属性中使用数组,如下所示:

<form method="post">
<input type="text" name="option_1[]" value="1">
<input type="text" name="option_1[]" value="2">
<input type="text" name="option_1[]" value="3">

<input type="text" name="option_2[]" value="1">
<input type="text" name="option_2[]" value="2">
</form>

如果您只想使用一个名称
选项
,请使用以下选项:

if(isset($_POST['btn_submit']))
{
  $newArr[] = implode(',',$_POST['option'][0]);
  $newArr[] = implode(',',$_POST['option'][1]);
  echo "<pre>";
  print_r($newArr);
}

PHP:

array ( 
    [0] => 1,2,3 
    [1] => 1,2   
)
if(isset($_POST['btn_submit']))
{
    $newArr[] = implode(',',$_POST['option_1']);
    $newArr[] = implode(',',$_POST['option_2']);
    echo "<pre>";
    print_r($newArr);
}
<form method="post">
  <input type="text" name="option[0][]" value="1">
  <input type="text" name="option[0][]" value="2">
  <input type="text" name="option[0][]" value="3">

  <input type="text" name="option[1][]" value="1">
  <input type="text" name="option[1][]" value="2">

  <input type="submit" name="btn_submit">
</form>
//question 1 array index [0]
<input type="text" name="option_1[]" value="1">
<input type="text" name="option_1[]" value="2">
<input type="text" name="option_1[]" value="3">

//question 2 array index [1]
<input type="text" name="option_2[]" value="1">
<input type="text" name="option_2[]" value="2">
if(isset($\u POST['btn\u submit']))
{
$newArr[]=内爆(“,”,$\u POST['option'][0]);
$newArr[]=内爆(“,”,$_POST['option'][1]);
回声“;
印刷费($newArr);
}

您只需在选项名称之前使用
[]
,即可将其设置为数组

//问题1数组索引[0]
//问题2数组索引[1]

将您的代码替换为以下代码,它将正常工作

if(isset($\u POST['btn\u submit']))
{
//代码在这里
}
//问题1数组索引[0]
//问题2数组索引[1]

name=“option[]”——我可以在所有文本框中使用相同的名称,但仍然可以获得预期的数组输出吗?@VanAdrianCabrera:answer-udpatedi不想将其内爆。我只想将其放入一个变量数组中,然后我就完成了。如何操作?@VanAdrianCabrera:您的预期结果是:数组([0]=>1,2,3[1]=>1,2)可以使用相同的名称,但仍然可以获得预期的数组值?如果要存储在不同的索引中,则需要使用不同的名称。或者使用like
option[0][]
,对于第二个
option[1][]
,再使用一个索引。
//question 1 array index [0]
<input type="text" name="option_1[]" value="1">
<input type="text" name="option_1[]" value="2">
<input type="text" name="option_1[]" value="3">

//question 2 array index [1]
<input type="text" name="option_2[]" value="1">
<input type="text" name="option_2[]" value="2">
 if(isset($_POST['btn_submit'])
  {
    //code here
  }

<form method="post">
  //question 1 array index [0]
  <input type="text" name="option[0][]" value="1">
  <input type="text" name="option[0][]" value="2">
  <input type="text" name="option[0][]" value="3">

  //question 2 array index [1]
  <input type="text" name="option[1][]" value="1">
  <input type="text" name="option[1][]" value="2">

  <input type="submit" name="btn_submit">
</form>