索引数组时的数组到字符串转换错误

时间:2015-06-04 17:10:28

标签: php arrays

它说我收到了这些错误:

  

注意:数组转换为字符串   第19行的C:\ xampp \ htdocs \ Team_Aveera_Website \ inc \ user_functions.php   数组注意:数组转换为字符串   第22行的C:\ xampp \ htdocs \ Team_Aveera_Website \ inc \ user_functions.php

当我尝试索引我的数组时。我正在做的是从数据库获取所有行并将行中的值添加到数组。然后我从数组中得到一个随机对象:

<?php
    function getRandomAdminStream($db) {
        try {
            $twitchNames[] = array();

            $SQL = $db->prepare('SELECT * FROM users');
            $SQL->setFetchMode(PDO::FETCH_ASSOC);
            $SQL->execute();

            $i = 0;
            while($row = $SQL->fetch() !== FALSE) {
                if($row['rank'] == 1) {
                    $twitchNames[$i] = $row['twitchUsername'];
                    $i++;
                }
            }

            $random = $twitchNames[rand(0, count($twitchNames) - 1)];
            echo $random;

            echo '<iframe id="home-stream" type="text/html" height="420"
                src="http://www.twitch.tv/'.$random.'/embed"
                frameborder="0"></iframe>
                <div class="info-holder">
                </div>';
        } catch (PDOException $e) {
            echo $e->getMessage();
        }
    }
?>

1 个答案:

答案 0 :(得分:0)

即使我设置了获取模式:

$SQL->setFetchMode(PDO::FETCH_ASSOC);

它仍然不会在while循环中使用关联数组,所以我不得不像这样更改语句:

while($row = $SQL->fetch(PDO::FETCH_ASSOC)) {}