【问题标题】:How to return combinations of coordinates in PHP?如何在 PHP 中返回坐标组合?
【发布时间】:2017-03-14 21:03:28
【问题描述】:

我想返回坐标组合。请查看下面提供的脚本和问题。

这个脚本

<?php
$x = 1;
$y = 8;
$x_c = -200;
$y_c = 100;
$i = 20;
while($x <= 5) {
    echo "x is: $x <br>";
    echo "x_c is: $x_c <br>";
    $x++;
    $x_c = $x_c + $i;
} 
echo "<hr>";
while($y <= 13) {
    echo "y is: $y <br>";
    echo "y_c is: $y_c <br>";
    $y++;
    $y_c = $y_c - $i;
} 
?>

将返回:

x is: 1 
x_c is: -200 
x is: 2 
x_c is: -180 
x is: 3 
x_c is: -160 
x is: 4 
x_c is: -140 
x is: 5 
x_c is: -120 
y is: 8 
y_c is: 100 
y is: 9 
y_c is: 80 
y is: 10 
y_c is: 60 
y is: 11 
y_c is: 40 
y is: 12 
y_c is: 20 
y is: 13 
y_c is: 0 

问题

我怎样才能将这个组合作为模式返回

x1,y1,x_c1,y_c1
x1,y2,x_c1,y_c2
x1,y3,x_c1,y_c3
...
x2,y1,x_c2,y_c1
x2,y2,x_c2,y_c2
x2,y3,x_c2,y_c3
...
x3,y1,x_c3,y_c1
x3,y2,x_c3,y_c2
x3,y3,x_c3,y_c3

或带数字

1,8,-200,100
1,9,-200,80
1,10,-200,60
...
2,8,-180,100
2,9,-180,80
2,10,-180,60
...
3,8,-160,100
3,9,-160,80
3,10,-160,60

【问题讨论】:

    标签: php arrays for-loop arraylist while-loop


    【解决方案1】:

    您需要将$y 循环放在$x 循环内。这里我使用$yy$yy_c 作为内部循环,这样我可以在进入循环之前将它们重置回原来的$y$y_c

    <?php
    $x = 1;
    $y = 8;
    $x_c = -200;
    $y_c = 100;
    $i = 20;
    while($x <= 5) {
        $yy = $y;
        $yy_c = $y_c;
        while($yy <= 13) {
            echo "$x,$yy,$x_c,$yy_c<br>";
            $yy++;
            $yy_c = $yy_c - $i;
        } 
        $x++;
        $x_c = $x_c + $i;
    }
    ?>
    

    【讨论】:

      猜你喜欢
      • 2016-08-04
      • 1970-01-01
      • 1970-01-01
      • 2017-06-01
      • 1970-01-01
      • 2016-06-02
      • 2017-10-10
      • 1970-01-01
      相关资源
      最近更新 更多