【问题标题】:How to use a variable in an array request in php如何在php中的数组请求中使用变量
【发布时间】:2016-11-15 00:05:59
【问题描述】:

我正在使用

$i = 0;
while ($i <= 6) {
    print $game['stats']['item0'];
    $i++;
}

我希望item0 增加到item1 直到item6,所以最后一段时间应该是
print $game['stats']['item6'];

我也试过了:$game['stats']['item{$i}'] 但它不起作用。

对我有什么想法吗?

【问题讨论】:

    标签: php arrays variables while-loop


    【解决方案1】:

    你可以试试这个:

    while ($i <= 6) {
        $key = 'item'.$i;   
        print $game['stats'][$key];
        $i++;
    }
    

    【讨论】:

    • 不客气,伙计。如果它解决了您的目的,请投票并接受答案。 :)
    【解决方案2】:

    你应该很高兴与此

    $i = 0;
    while ($i <= 6) {
        print $game['stats']["item$i"];
        $i++;
    }
    

    当一个字符串用双引号或heredoc指定时,变量 在其中进行解析。

    【讨论】:

      【解决方案3】:

      在字符串末尾包含$i

      <?php
      $i = 0;
      while ($i <= 6) {
          print $game['stats']['item' . $i];    //<============== , 'item0', 'item1', ...
          $i++;
      }
      ?>
      

      【讨论】:

        【解决方案4】:

        这是您的代码的编辑版本。它应该工作:

        <?php
        $i = 1;
        $game = array("stats" => 
        array("item1" => 1, "item2" => 2, "item3" => 3, "item4" => 4, "item5" => 5, "item6" => 6 ));
        while ($i <= 6) {
            $tmp = 'item'.$i;
            print $game['stats'][$tmp];
            $i++;
        }
        

        【讨论】:

          【解决方案5】:

          您必须在项目后附加 $i。而且你不需要定义新的变量。

          $i = 0;
          while ($i <= 6) {
              print $game['stats']['item'.$i];
              $i++;
          }
          

          【讨论】:

            【解决方案6】:

            如果您需要执行一定次数的操作,for 循环通常比 while 循环更简洁。

            for ($i=0; $i < 6; $i++) {
                print $game['stats']["item$i"];
            }
            

            这不是一个更正确的方法,它真的只是取决于你的风格,但我认为值得一提。

            【讨论】:

            • 是的,你是对的。我从来没有使用过for循环。我想我需要开始使用它:) 谢谢
            猜你喜欢
            • 2013-05-16
            • 2014-03-17
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-11-19
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多