dpmopn8542
2018-06-08 03:57
浏览 88
已采纳

在PHP中将$ _Post值存储到数组中

Sorry I don't know how to explain it in title so I just explain it here.

So I have this html and I want to store this in array, this is the code below

<tr>
<td>
<input name="grade_id[]" value="4" type="hidden">
</td>
<td>
<input name="q1_grade[]">94</input>
</td>
<td>
<input name="q2_grade[]">89</input>
</td>
<td>
<input name="q3_grade[]">90</input>
</td>
<td>
<input name="q4_grade[]">88</input>
</td>
</tr>
<tr>
<td>
<input name="grade_id[]" value="7" type="hidden">
</td>
<td>
<input name="q1_grade[]">95</input>
</td>
<td>
<input name="q2_grade[]">77</input>
</td>
<td>
<input name="q3_grade[]">77</input>
</td>
<td>
<input name="q4_grade[]">98</input>
</td>
</tr>

Now from above code I want to manipulate the datas in an array so I put the data specifically in array which the id has its own $q1 $q2 $q3 $q4 to do this is as per code below

<?php
 $grade_idArray = $_POST['grade_id'];
 $q1_gradesArray = $_POST['q1_grade'];
 $q2_gradesArray = $_POST['q2_grade'];
 $q3_gradesArray = $_POST['q3_grade']; 
 $q4_gradesArray = $_POST['q4_grade'];

 $grade = array();
 $gf = array();

 foreach($grade_idArray as $g)
 {
    foreach($q1_gradesArray as $q1)
    {
      foreach($q2_gradesArray as $q2)
      {
        foreach($q3_gradesArray as $q3)
        {
            foreach($q4_gradesArray as $q4)
            {
                $grade = array($g,$q1,$q2,$q3,$q4);
            }
        }
      }
    }
  }

 echo var_dump($grade);
 ?>

But the output data that I am receiving is just one array instead of two arrays. how should i do it?

array(5) { [0]=> string(2) "7" [1]=> string(2) "95" [2]=> string(2) "77" [3]=> string(2) "77" [4]=> string(2) "98" }

图片转代码服务由CSDN问答提供 功能建议

抱歉,我不知道如何在标题中解释它,所以我在这里解释一下。 \ n

所以我有这个html,我想把它存储在数组中,这是下面的代码

 &lt; tr&gt; 
&lt; td&gt; 
&lt;  ; input name =“grade_id []”value =“4”type =“hidden”&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt; input name =“q1_grade []”&gt; 94&lt; / input&gt;  
&lt; / td&gt; 
&lt; td&gt; 
&lt;输入名称=“q2_grade []”&gt; 89&lt; / input&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt;输入名称=“q3_grade []  “&gt; 90&lt; / input&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt;输入名称=”q4_grade []“&gt; 88&lt; / input&gt; 
&lt; / td&gt; 
&lt; / tr&gt; \  n&lt; tr&gt; 
&lt; td&gt; 
&lt; input name =“grade_id []”value =“7”type =“hidden”&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt; input name =“  q1_grade []“&gt; 95&lt; / input&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt;输入名称=”q2_grade []“&gt; 77&lt; / input&gt; 
&lt; / td&gt; 
&lt; td&gt;  ; 
&lt;输入名称=“q3_grade []”&gt; 77&lt; / input&gt; 
&lt; / td&gt; 
&lt; td&gt; 
&lt;输入名称=“q4_grade []”&gt; 98&lt; / in  put&gt; 
&lt; / td&gt; 
&lt; / tr&gt; 
   
 
 

现在从上面的代码中我想操纵数组中的数据,所以我专门放置数据 在 id 有自己的 $ q1 $ q2 $ q3 $ q4 的数组中,按照下面的代码

 < 代码>&lt;?php 
 $ grade_idArray = $ _POST ['grade_id']; 
 $ q1_gradesArray = $ _POST ['q1_grade']; 
 $ q2_gradesArray = $ _POST ['q2_grade']; 
 $ q3_gradesArray =  $ _POST [ 'q3_grade'];  
 $ q4_gradesArray = $ _POST ['q4_grade']; 
 
 $ grade = array(); 
 $ gf = array(); 
 
 foreach($ grade_idArray as $ g)
 {
  foreach($ q1_gradesArray为$ q1)
 {
 foreach($ q2_gradesArray as $ q2)
 {
 foreach($ q3_gradesArray as $ q3)
 {
 foreach($ q4_gradesArray as $ q4)
 {  
 $ grade = array($ g,$ q1,$ q2,$ q3,$ q4); 
} 
} 
} 
} 
} 
 
 echo var_dump($ grade); \  n?&gt; 
   
 
 

但我收到的输出数据只是一个数组而不是两个数组。 我应该怎么做?

  array(5){[0] =&gt;  string(2)“7”[1] =&gt;  string(2)“95”[2] =&gt;  string(2)“77”[3] =&gt;  string(2)“77”[4] =&gt;  string(2)“98”} 
   
 
  • 写回答
  • 好问题 提建议
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • duanguoyin7008 2018-06-08 04:06
    已采纳

    You can try this way. May be it would be helpful for you.

    foreach($grade_idArray as $key => $g)
     {
        $grade[$key] = [$g, $q1_gradesArray[$key], $q2_gradesArray[$key], 
        $q3_gradesArray[$key], $q4_gradesArray[$key]]
    }
    echo var_dump($grade);
    
    已采纳该答案
    评论
    解决 1 无用
    打赏 举报

相关推荐 更多相似问题