PHP获取输入名称

时间:2016-07-05 13:18:29

标签: php forms input get

使用_GET发布表单后,我想获取输入名称

提交时请参阅以下部分网址

.php?14=0&15=0&16=0&17=0&18=0&19=0

我知道如何获得变量E.G:

$14=$_GET["14"]; 

哪个是0

但是可以这样做并获取输入名称(例如14)然后将它们变成变量吗? (将输入名称保存到DB)

2 个答案:

答案 0 :(得分:0)

要获取所有$_GET参数,您可以执行以下操作:

foreach($_GET as $key => $value){
    echo "Key is $key and value is $value<br>";
}

这将输出每个键(14,15,16等)和值(0,0,0等)。

要使用变量字符串绑定变量名称,请查看variable variables

foreach($_GET as $key => $value){
    $$key = $value;
}

因此,您将拥有以下具有以下值的变量:

$14 = 0;
$15 = 0;
$16 = 0;
// etc...

或者(因为你不必知道键/值对是什么),你可以创建一个空数组并将这些键和值添加到它:

foreach($_GET as $k => $v){
    $arr[$k] = $v;
}

结果数组将是:

$arr[14] = 0;
$arr[15] = 0;
$arr[16] = 0;
// etc...

答案 1 :(得分:-2)

使用单循环解决方案(更新):

如果你只是单次使用问题/答案,你可以像这样单循环地进行,

<?php

foreach($_GET as $key => $value){
    $question = $key;
    $answer = $value;

    // Save question and answer accordingly.
}

如果您将使用问题答案执行其他操作,请使用以下方法。

您可以使用array_keys()获取所有,其中 $ _ GET 是一个数组。

像这样使用,

<?php
     $keys=array_keys($_GET);
     print_r($keys); // this will print all the keys
     foreach($keys as $key) {
         // access each key here with $key
     }

<强>更新

您可以创建一对问题,回答数组并将其放入主数组中,以便将其插入数据库中,如下所示,

<?php
         $mainArray=array();
         $keys=array_keys($_GET);
         foreach($keys as $key) {
             // access each key here with $key
             $questionAnswerArray=array();
             $questionAnswerArray["question"]=$key;
             $questionAnswerArray["answer"]=$_GET[$key];
             $mainArray[]=$questionAnswerArray;
         }

         // Now traverse this array to insert the data in database.
         foreach($mainArray as $questionanswer) {
              echo $questionanswer["question"]; //prints the question
              echo $questionanswer["answer"]; // prints the answer.
         }