在我的一个网站上,我将所有访问者和他们的国家代码记录在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