如何将一组这样的数据转化为数组?

codeyell-com 2009-08-17 10:02:31
有一组来访者所在国家的数据:
CHN USA CHN MKD USA CHN

希望能变成类似这样的两个数组

$country=(CHN,USA,MKD,);//显示所有的国家
$number=(3,2,1);//显示相应国家的访问者数量

请教大家!如何转?
...全文
298 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
YHL27 2009-08-17
  • 打赏
  • 举报
回复
sf!!
foolbirdflyfirst 2009-08-17
  • 打赏
  • 举报
回复
厄,其实我想写array_count_values。。搞错了。。
lz自己解决问题了。
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
兄弟说的不错
不过我想用jpgraph画图,就得把一个数组分成两个。

[Quote=引用 11 楼 jnkc 的回复:]
数据库访问记录的表visit字段:..... ip country .....
查询ip得到对应国家后更新到访问记录表,然后
SQL codeSelect country,Count(1)From visitGroupBy country

得到的结果存入数据库就很容易了,不过建议别2个数组了,一个多方便啊
$arr = array('CHN'=>4563,'USA'=>1234,'MKD'=>239);
[/Quote]
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
array_keys
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
array_count_values
江南昆虫 2009-08-17
  • 打赏
  • 举报
回复
数据库访问记录的表visit字段:..... ip country .....
查询ip得到对应国家后更新到访问记录表,然后
Select country,Count(1) From visit Group By country


得到的结果存入数据库就很容易了,不过建议别2个数组了,一个多方便啊
$arr = array('CHN'=>4563,'USA'=>1234,'MKD'=>239);
foolbirdflyfirst 2009-08-17
  • 打赏
  • 举报
回复
mysql_pconnect("$hlangtname","$username","$password") or die("Connect error!");
mysql_select_db($db) or die("Select error!");
$query="select ip from $t1";
$result=mysql_query("$query") or die("Query error!");
$area=array();

while($row=mysql_fetch_array($result)){
$country=showcountry($row[0]);//根据IP得到国家
}
$s = explode(' ',$country);
$cs = array_values($s);
print_r($cs);
mysql_close();

codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
showcountry函数就是查国家的,得到的$country就是像CHN这样的字符串。
[Quote=引用 8 楼 cunningboy 的回复:]
这个要用到IP地址库,你可以去http://www.apnic.net/看看,如果查IP及地区。
[/Quote]
CunningBoy 2009-08-17
  • 打赏
  • 举报
回复
这个要用到IP地址库,你可以去http://www.apnic.net/看看,如果查IP及地区。
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复

mysql_pconnect("$hlangtname","$username","$password") or die("Connect error!");
mysql_select_db($db) or die("Select error!");
$query="select ip from $t1";
$result=mysql_query("$query") or die("Query error!");
$area=array();

while($row=mysql_fetch_array($result)){
$country=showcountry($row[0]);//根据IP得到国家
}
mysql_close();
dzxccsu 2009-08-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 baiyuxiong 的回复:]
上面的国家数据不是字符串
是我从数据库里一个IP的字段里取出来IP,然后通过函数得到其所在国家得到的。
我只是想求出来国家后,能统计一个各个国家的访问人数。

引用 1 楼 cunningboy 的回复:
可以用expolde将字符串转为数组。

[/Quote]把你代码拿出来!
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
是数组,但我查出来的只是IP地址
我需要先得到IP所在的国家。
然后再统计每个国家的人数。
[Quote=引用 4 楼 cunningboy 的回复:]
你的问题描述不够清晰,数据库查询出来的结果就是数组形式的吧。
[/Quote]
CunningBoy 2009-08-17
  • 打赏
  • 举报
回复
你的问题描述不够清晰,数据库查询出来的结果就是数组形式的吧。
codeyell-com 2009-08-17
  • 打赏
  • 举报
回复
上面的国家数据不是字符串
是我从数据库里一个IP的字段里取出来IP,然后通过函数得到其所在国家得到的。
我只是想求出来国家后,能统计一个各个国家的访问人数。

[Quote=引用 1 楼 cunningboy 的回复:]
可以用expolde将字符串转为数组。
[/Quote]
dzxccsu 2009-08-17
  • 打赏
  • 举报
回复

$str="CHN USA CHN MKD USA CHN ";
$country=explode(' ',$str);
CunningBoy 2009-08-17
  • 打赏
  • 举报
回复
可以用expolde将字符串转为数组。

21,891

社区成员

发帖
与我相关
我的任务
社区描述
从PHP安装配置,PHP入门,PHP基础到PHP应用
社区管理员
  • 基础编程社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧