如何计算和显示PHP字符串中的重复? [重复]

问题描述 投票:-2回答:2

这个问题与以下内容完全相同:

要创建排名,我想计算,然后在字符串中显示重复的条目

<?php

$orgasql = "SELECT organisateur FROM events ";                                  
$orgareq = $bdd->prepare($orgasql);                                     
$orgareq->execute();                                        
while($eventrow = $orgareq->fetch(PDO::FETCH_ASSOC)) {                                      
$eventorgaas[] = $eventrow['organisateur'];                                     
}                                       
$eventimploded = implode(',',$eventorgaas);                                     
$eventimploded = implode(',',array_unique(explode(',', $eventimploded)));                                       
echo $eventimploded
?>

当前代码返回此结果:

Holyblood,Nessy,Pokégaia,Sorrow,JOHN

我希望结果如下:

Holyblood - 2 ,Nessy - 1,Pokégaia - 1,Sorrow -1,JOHN -1

(我的数据库中有两个“圣血”出现,array_unique删除重复)

php string count duplicates show
2个回答
0
投票

organisateur组成他们并计算他们的出现:

<?php
$orgasql = "SELECT organisateur, COUNT(*) as count FROM events GROUP BY organisateur";                                  
$orgareq = $bdd->prepare($orgasql);                                     
$orgareq->execute();                                        
while($eventrow = $orgareq->fetch(PDO::FETCH_ASSOC)) {                                      
    $eventorgaas[] = $eventrow['organisateur'] . '-' . $eventrow['count'] ;                                     
}                                       
$eventimploded = implode(',',$eventorgaas);                                      
echo $eventimploded
?>

1
投票

你可以用sql做到这一点

select organisateur, count(*) my_count
from events
group by  organisateur

要么

select concat(organisateur, ' - ' ,  count(*))  my_result
from events
group by organisateur
© www.soinside.com 2019 - 2024. All rights reserved.