PHP错误参数不是数组错误

时间:2016-03-19 14:55:42

标签: php arrays arguments

我的代码运行不正常,运行代码时出现此错误:

Picture of error

这是代码的第110行:

$results = array_merge($results, $game_list[$row][$col]);

这是代码的其余部分:

$results = array();

        for ($row = 0; $row < $num_rows; $row++){

                            if (strstr($game_list[$row][2], $search) or strstr($game_list[$row][3], $search)){
                                   for ($col = 0; $col < count($game_list[$row]); $col ++) { 

                                           $results = array_merge($results, $game_list[$row][$col]);




                                           $successful = true;
                                   }
                            }


        }
                    if ($successful == true){
                            echo "<table>

                                <tr>
                                    <th>Game ID</th>
                                    <th>Genre</th>
                                    <th>Game Name</th>
                                    <th>Game Description</th>
                                    <th>Rental Cost Per Day</th>
                                </tr>";

                                // Set number of table rows
                                $num_rows = count($results) - 1;
                                // Set number of table columns
                                $num_cols = 5;

                                // Start loop to generate rows
                                for($row = 0; $row < $num_rows; $row++) {
                                    // Generate row HTML
                                    echo "<tr>";

                                    //Start loop to generate columns (nested FOR loop!)
                                    for($col = 0 ; $col < $num_cols; $col++) {
                                            // Generate column HTML
                                            echo "<td>". $results[$row][$col] ."</td>";
                                    }
                                // End of columns loop
                                // Generate end of row HTML
                                echo "</tr>";
                                }

                            echo "</table>";

该代码用于搜索数组game_list,并查看用户输入的关键字是否在数组中。如果是,则代码将获取数组game_list中的整行并将其添加到数组结果中。然后,该数组将以表格形式显示给用户。

如果有人能给我一个很棒的解决方案。

1 个答案:

答案 0 :(得分:0)

该错误的原因是,您尝试将数组与字符串合并, array_merge将两个数组作为参数。

我建议根本不使用array_merge(),只需将请求的数据添加到结果数组中:

<?php
$results = Array();
...
   $results[] = $game_list[$row];
...
?>