如何将循环(for)值声明为变量

时间:2011-08-14 13:33:53

标签: php

我写了一个循环函数如下:

for($x=0; $x<5; $x++){
     echo "'$x'";
     if($x!=4){
          echo ", ";
     }
}

那将给出结果

'0', '1', '2', '3', '4'

如何将结果声明为变量,以便我可以调用并使用它。例如,上面的结果声明为$ values。因此,我只需要调用$ values来获得'0','1','2','3','4'。希望这足以说明我的问题。

4 个答案:

答案 0 :(得分:4)

您正在寻找range功能:

$upToFour = range(0, 4);

或者,您可以在循环中构造数组:

$upToFour = array();
for ($i = 0;$i < 5;$i++) {
   $upToFour[] = $i; // Equivalently: array_push($upToFour, $i);
}

如果要构造结果字符串,请使用implode

$upToFourString = implode(',', $upToFour);

,或者,如果您需要引号:

$upToFourString = implode(',',
                          array_map(
                            function($num) {return "'" . $num . "'";},
                            $upToFour));

,或等同地

$upToFourString = '';
for($x=0; $x<5; $x++){
     $upToFourString .= "'$x'";
     if($x!=4){
          $upToFourString .= ", ";
     }
}

答案 1 :(得分:1)

这样做会在代码中进行最少的更改

   <?php

        ob_start();
        for($x=0; $x<5; $x++){
             echo "'$x'";
             if($x!=4){
                  echo ", ";
             }
        }
        $values = ob_get_contents();
        ob_end_clean();
        echo $values;

        ?>

答案 2 :(得分:0)

$result = array();
for ($x=0; $x<5; $x++)
    $result[] = $x;

答案 3 :(得分:0)

很简单:

$a = array();
for($x=0; $x<5; $x++){
    array_push($a, $x);
}