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


How to declare looping (for) values as a variable

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

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

返回结果

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

如何将结果声明为变量以便调用和使用它?例如,上面的结果被声明为$values。因此,我只需要调用$values来获取'0' '1' '2' '3' '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 .= ", ";
     }
}

这将使您的代码更改最少

   <?php
        ob_start();
        for($x=0; $x<5; $x++){
             echo "'$x'";
             if($x!=4){
                  echo ", ";
             }
        }
        $values = ob_get_contents();
        ob_end_clean();
        echo $values;
        ?>
$result = array();
for ($x=0; $x<5; $x++)
    $result[] = $x;

很简单:

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