-1

我可能在这段代码中遗漏了一些东西,似乎是某种循环问题,这是代码,我不知道发生了什么:

    function clearBoard() {
        //initialize board with a . in each cell
        global $board, $boardData;

        for ($row = 0; $row < $boardData["height"]; $row++) {
            for ($col = 0; $col < $boardData["width"]; $col++) {
                $board[$row][$col] = ".";
            } //end col for loop
        } //end row for loop
    } //end clearBoard

非常感谢

亚历克斯

4

1 回答 1

2

该代码没有先天问题。它以非常合理的方式完成了显而易见的事情。如果花费的时间太长,那么网格就太大了。就这么简单。

话虽如此,有一种方法可以加快速度:使用array_fill

function clearBoard() {
    global $board, $boardData;
    $board = array_fill(0, $boardData["height"],
        array_fill(0, $boardData["width"], "."));
}

array_fill据我所知,是用 C 实现的,应该比 PHP 快。

于 2013-04-07T01:49:10.100 回答