2015-06-04 60 views
0

當它說我得到這些錯誤:在 C中的數組字符串轉換:數組字符串轉換錯誤索引陣列

通知\ XAMPP \ htdocs中\ Team_Aveera_Website \ INC \上線user_functions.php 19 陣列注意:Array對字符串的轉換在 C:\ XAMPP \ htdocs中\ Team_Aveera_Website \ INC \ user_functions.php上線22

當我嘗試索引我的陣列。我正在做的是從數據庫中獲取所有行,並將行中的值添加到數組中。然後,我從數組中獲得一個隨機的對象:

<?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

它shuld是print_r($隨機); –

+0

這沒有什麼區別,它只是打印這個:'Array()' – rshah

+0

它有所作爲。那麼 –

回答

0

即使我設定的提取模式:

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

它仍然難道不使用while循環關聯數組,所以我不得不改變這樣的陳述:

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

,所以您得到了解決方案。 ? –

+0

是的,我設法弄清楚:) – rshah

+0

我可以給你解釋爲什麼你需要這樣做,爲什麼我發佈下面的答案? –

相關問題