2013-03-21 36 views
-1

好的。這是場景。 我正在獲取我的數據庫表的數據(的狀態消息)並將每個結果存儲在我的數組中。每個結果都包含多行。 它包含PHP - 如何將數據存儲在數組中以便事後分割而不會遇到麻煩?

statusID, posterID, statusMessage, dateTime, sumRating, sumVotes 

所以,當我在我的表中的多個狀態消息,我想全部打印出來的網站上。 按道理我知道只是這樣做

for($i = 0; $i < sizeof($results); $i++) 
     { 
      echo $results[i]; 
     } 

現在我得到的所有類型的所有數據。 但是現在,當我想對數據進行一些調整並對其進行格式化時,比方說,我不希望數據一個一個地打印出來。我想要posterID,然後我想要一個小小的PHP代碼或CSS或其他。

所以,我現在正在做的事情,就是我目前保存我的數據是這樣

foreach($statusMessageResult as $row){ 
      $results[] = $row['statusID'] . "," . $db->getUsername($db->getUserNameById($row['posterID'])) . "," . $row['statusMessage'] . "," . $row['dateTime'] . "," . $row['sumRating'] . "," . $row['sumVotes']; 
     } 

所以現在,在我的for循環,我只是分裂的結果陣列的當前條目在每個逗號。

$statusMessage = $results[$i]; 
      $statusMessageSplit = explode(",", $statusMessage); 
      echo "This status is written by: " . $statusMessageSplit[1] . " and has the ID: " . $statusMessageSplit[0] . "<br>"; 

我的問題是什麼,即,當用戶在他的狀態信息寫入

, 

將再次分裂。那麼,我能做些什麼來解決這個問題呢?

+1

變化從「」以分隔符‘|’? – Jordan 2013-03-21 18:36:58

+3

呃...只是一個想法:一個數組* *!! – deceze 2013-03-21 18:37:12

+0

@Jordan因爲肯定沒人會用「|」寫任何東西,在裏面。 – deceze 2013-03-21 18:38:24

回答

2

你可以做這樣的使用二維/交錯數組:

foreach($statusMessageResult as $row) 
    $results[$row['statusID']] = array($db->getUsername($db->getUserNameById($row['posterID'])), $row['statusMessage'], $row['dateTime'], $row['sumRating'], $row['sumVotes']); 

//usage: 
foreach($results as $index => $rowArr) 
    echo "StatusID: $index:\r\n" . var_export($rowArr);