没有正确读取$ POST变量

时间:2017-01-23 11:28:22

标签: php post yii2

我有一些字段,在发送时向我发送$ POST。我想获得一个价值,但我不能,也许我只是失明,但对我而言,我在这里看到的是不可能的。 PHP:

$i = 0;
$ok = Yii::$app->request->post("Presentations");
$ok2 = $ok[$i]['place_name'];
var_dump($ok);
var_dump($ok2);
$i++;

首先,var_dump告诉我预期的结果:

array (size=8)
  0 => 
    array (size=11)
      'gen_status_chechbox' => string '1' (length=1)
      'name' => string 'F17011201' (length=9)
      'presenter_id' => string '2' (length=1)
      'presentation_assistants_ids' => 
        array (size=1)
          0 => string '1' (length=1)
      'date' => string '2017-01-12' (length=10)
      'time' => string '12:00' (length=5)
      'place_id' => string '50' (length=2)
      'place_name' => string '0' (length=1)
      'place_city' => string '0' (length=1)
      'place_street' => string 'a' (length=1)
      'place_post_code' => string '00-000' (length=6)
  1 => 
    array (size=10)
      'gen_status_chechbox' => string '1' (length=1)
      'name' => string 'F17011202' (length=9)
      'presenter_id' => string '2' (length=1)
      'presentation_assistants_ids' => 
        array (size=1)
          0 => string '1' (length=1)
      'date' => string '2017-01-12' (length=10)
      'time' => string '12:00' (length=5)
      'place_name' => string 'juz' (length=3)
      'place_city' => string 'nie' (length=3)
      'place_street' => string 'wiem' (length=4)
      'place_post_code' => string '55-999' (length=6)
  2 => 
    array (size=11)
      'gen_status_chechbox' => string '1' (length=1)
      'name' => string 'F17011301' (length=9)
      'presenter_id' => string '2' (length=1)
      'presentation_assistants_ids' => 
        array (size=1)
          0 => string '1' (length=1)
      'date' => string '2017-01-13' (length=10)
      'time' => string '12:00' (length=5)
      'place_id' => string '45' (length=2)
      'place_name' => string '0' (length=1)
      'place_city' => string '0' (length=1)
      'place_street' => string 'a' (length=1)
      'place_post_code' => string '00-000' (length=6)

等等,最多8个,因为我创建了8个演示文稿。第二个var_dump告诉我,无论如何,' 0'。在第二种情况下,place_name显然是' juz',而不是' 0'。我被困在那里已经超过2个小时了,这就是我得到一个明显的悖论,至少对我来说是这样。

' 0'是' place_name'的默认值输入,但如果$ _POST已经有不同的值,它怎么会出现?

1 个答案:

答案 0 :(得分:1)

好的,我现在看到了。

我希望你在这段代码之外循环,但是,你重新定义$i每次循环迭代。 在循环语句之前取$i = 0;或像这样使用for()

$ok = Yii::$app->request->post("Presentations");
for($i = 0; $i < count($ok); $i++) {
   $ok2 = $ok[$i]['place_name'];
   var_dump($ok2);
}