在我的一個網站上,我將所有訪問者和他們的國家代碼記錄在MySQL表中。如何將此MySQL數據轉換爲此XML字符串(PHP)?
爲簡單起見,我們只是說這個表的列是「IP」和「國家」。所以我有一個來自幾個不同國家的大量遊客。
出於顯示的目的,我需要把這些數據轉換成XML格式字符串是這樣的:
<set label='US' value='17'/>
<set label='FR' value='12'/>
<set label='GB' value='18'/>
<set label='AU' value='8' />
其中值=「」是多少訪問者是來自那個國家。我希望字符串包含表中的所有國家/地區。我想我能做到這一點
一個辦法是用某國來計算所有的行,例如:
$query = mysql_query("SELECT * FROM visitors WHERE country='US'");
$string.="<set label='US' value='".mysql_num_rows($query)."'/>";
$query = mysql_query("SELECT * FROM visitors WHERE country='FR'");
$string.="<set label='FR' value='".mysql_num_rows($query)."'/>";
$query = mysql_query("SELECT * FROM visitors WHERE country='DE'");
$string.="<set label='DE' value='".mysql_num_rows($query)."'/>";
的問題,我很快就意識到,是我的客人是從數百個不同的國家和這真是凌亂!此外,我可能會錯過某個來自未來的國家。
是不是有一個更簡單的方法來做到這一點?也許有一個特殊的陣列和foreach什麼的...
謝謝你的幫助!
好嗎謝謝...這是什麼樣的輸出會給我嗎?我應該將查詢轉換爲數組嗎?編輯 – hellohellosharp 2012-03-21 03:37:20
@ user1019588以顯示完整的PHP片段。 – hjpotter92 2012-03-21 03:40:32
謝謝!正是我在找:) – hellohellosharp 2012-03-21 04:12:55