这就是我到目前为止所拥有的:
foreach ($users as $user) {
if (!array_keys($usersPerCity, $user->city)){
$usersPerCity[]=[$user->city => 1];
}else{
$usersPerCity[$user->city] = ($usersPerCity[$user->city] + 1);
}
}
我的+1的作用为0,它只是创建城市=> 1而无需添加。 我将如何汇总已经存在的城市?
答案 0 :(得分:2)
您以正确的方式在<!DOCTYPE web-app PUBLIC
"-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
"http://java.sun.com/dtd/web-app_2_3.dtd" >
<web-app version="2.5" xmlns="http://java.sun.com/xml/ns/javaee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd">
<display-name>Archetype Created Web Application</display-name>
</web-app>
中拥有了它。另外,这不是else
的目的,您是说array_keys
吗?无论如何,只要使用array_key_exists
,就可以增加isset
:
++
从PHP 7.0开始,只需从对象数组中提取foreach ($users as $user) {
if (!isset($usersPerCity[$user->city])){
$usersPerCity[$user->city] = 1;
} else {
//$usersPerCity[$user->city] = ($usersPerCity[$user->city] + 1);
$usersPerCity[$user->city]++;
}
}
并计算值:
city