2012-03-18 196 views
0

我有一個mySQL表,其中有一個字段,我在其中保存我的數組。所以在表字段我有這個:PHP從數組中獲取元素存儲在mySQL數據庫

a:2:{i:0;s:10:"XXX1";i:1;s:10:"XXX2";} 

我在PHP中使用此代碼段來獲取字段值。

$getCodes = mysql_query("SELECT * FROM foo WHERE bar='$barID'"); 
while($codeRow = mysql_fetch_array($getCodes)) 
{ 
    $code = $codeRow['codes']; 
} 

當我回顯$ code時,它會打印完整的數組。我如何在一個新行上打印每個元素,或者如何訪問特定元素?

+2

將數組存儲在單個字段中並不是一個好主意。看看[規範化](http://en.wikipedia.org/wiki/Database_normalization) – 2012-03-18 19:03:57

+0

你是否以序列化格式存儲它?或者其他的一些 – 2012-03-18 19:11:03

+0

@MostyMostacho - 有時候將數組存儲在單個字段中有很好的理由。這取決於具體情況。 – 2012-03-18 20:31:41

回答

2
$code = unserialize($codeRow['codes']); 
+0

非常感謝你:) – 2012-03-18 19:04:55

相關問題