2011-09-01 34 views
2

我wp_usermeta表有4列,umeta_id | user_id | meta_key | meta_value 表格的圖像: enter image description here從mysql表中反序列化數據並通過php輸出?

其中一列包含序列化數據 - wp_s2member_custom_fields。我如何從MySQL反序列化或用PHP輸出來查看序列化列中的所有用戶數據?

這裏是串行數據的細目分類: wp_s2member_custom_fields

a:12:{ 
s:7:"country"; 
s:2:"CA"; 
s:4:"city"; 
s:8:"Brampton"; 
s:5:"state"; 
s:7:"Ontario"; 
s:8:"zip_code"; 
s:6:"L6T4E7"; 
s:3:"age"; 
s:13:"25–34 years"; 
s:8:"blog_url"; 
s:22:"http://www.blog.com"; 
s:16:"blog_description"; 
s:106:"A blog about blogging"; 
s:15:"monthly_uniques"; 
s:4:"1000"; 
s:13:"facebook_page"; 
s:55:"http://www.facebook.com/myfacebookpage"; 
s:14:"facebook_likes"; 
s:3:"1428"; 
s:15:"twitter_account"; 
s:31:"http://twitter.com/mytwitterpage"; 
s:17:"twitter_followers"; 
s:3:"5849";} 

回答

1

從數據庫中讀取數據,並使用PHP的unserialize()。有沒有在MySQL(或任何其他DB)這樣做的方式,而且是大多數開發者更喜歡只寫逗號分隔valies在其表的主要原因。

+0

你怎麼能獲取數據,並將其拉入表對錶中的所有數據? –

+0

這句話沒有任何意義,你是什麼意思? – Narf

+0

換句話說,我怎麼能拉串行數據轉換爲HTML表?從數據庫 –

0

WordPress的商店陣列/由序列化他們的數據庫對象,所以通常的檢索功能是你要尋找,因爲它會返回去系列化的數據是什麼。

在這種情況下,它是user_metadata,因此您需要使用函數get_user_meta(),它提供了$ user_id和$ key參數來檢索它。

在您的例子,這將是這樣的:

<?php  
$array = get_user_meta(760, 'wp_s2member_custom_fields'); 
var_dump($array); 



我希望幫助和有意義...

注:WordPress Codex是無價的資源!

+0

太棒了!如何把這個和所有的用戶拉到桌子上? –