You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在PHP中使用For循环统计数组内各城市的出现次数?

实现城市调查数组的统计功能(For循环版本)

没问题,我来帮你完成这个需求——用for循环统计数组里各城市的出现次数,并且把结果展示在表格里。下面是完整的实现代码,我加了注释方便你理解:

<?php
// 原始城市调查数组
$citySurvey = array("London", "Paris", "Rome", "Rome", "Paris", "Paris", "Paris", "London", "Rome", "Rome", "Paris", "London", "Paris", "London", "London", "London", "Paris", "London", "Paris", "Rome");

// 初始化一个空数组,用来存储每个城市的计数
$cityCounts = array();

// 第一个for循环:遍历原始数组,统计每个城市的出现次数
$totalCities = count($citySurvey);
for ($i = 0; $i < $totalCities; $i++) {
    $currentCity = $citySurvey[$i];
    // 如果当前城市已经在统计数组里,计数+1
    if (isset($cityCounts[$currentCity])) {
        $cityCounts[$currentCity]++;
    } else {
        // 如果是第一次遇到这个城市,初始化计数为1
        $cityCounts[$currentCity] = 1;
    }
}

// 输出标题和表格开头
print ("<h1>CITY SURVEY RESULTS</h1>");
print ("<table border = \"1\">");
print ("<tr><td>Cities</td><td>Counts</td></tr>");

// 第二个for循环:遍历统计数组,输出每个城市和对应的计数
// 先获取统计数组的键(也就是城市名称)
$cityNames = array_keys($cityCounts);
$totalUniqueCities = count($cityNames);
for ($j = 0; $j < $totalUniqueCities; $j++) {
    $city = $cityNames[$j];
    $count = $cityCounts[$city];
    print ("<tr><td>$city</td><td>$count</td></tr>");
}

// 关闭表格
print ("</table>");
?>

代码说明:

  • 首先用count()获取原始数组的长度,通过for循环逐个访问数组元素。
  • 用$cityCounts数组存储统计结果:城市名称作为键,出现次数作为值。每次遍历到城市时,判断它是否已在统计数组中,存在就累加计数,不存在则初始化计数为1。
  • 最后再用一个for循环遍历统计好的数组,把每个城市和对应的计数输出到表格行里。

这样运行代码后,就能看到完整的城市调查统计表格啦!

内容的提问来源于stack exchange,提问作者Boram Lamppa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:37:28