记录一下一个问题的解决,里面涉及几个函数的用法,当作复习啦。
先说明一下问题。数据表里面的字段 content 存储了一个以逗号分割的字符串,最大有20个数,最大数字为40。比如3,24,33,40类似字样的数字序列。其实就是一个保存了多项投票结果的字段啦。现在需要统计每个数字的个数,也就是每个投票项有多少人投了,并排序。
我的思路是这样的。
1. 首先从数据库的congtent字段读取数据,并把它们合并成一个字符串。
<?php while($myrow = $connector -> fetch_array($result)) { //$r[] = explode(",", $myrow["content"]); $str .= $myrow["content"].','; } $arr_str = substr($str, 0, -1); ?>
由于最后一个数后面有逗号,所以要对字符串进行截取。
2. 将字符串按逗号分割成数组。
$r = explode(",", $arr_str);
3. 用 array_count_values() 统计一维数组的元素个数
由于array_count_values()貌似不能直接对二维数组的元素进行个数统计,所以进行了上面的两个步骤,得到一个一维数组。
array_count_values() 函数用于统计数组中所有值出现的次数。返回一个数组,其元素的键名是原数组的值,键值是该值在原数组中出现的次数。
$rs = array_count_values($r);
4. 排序
排序很简单了,但要保持键值,可以使用自带的asort()函数。
asort($rs); echo '<pre class="brush:php;toolbar:false">'; print_r($rs); echo '';
记录一下几个用到的函数。

Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

Video Face Swap
Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Article

Hot Tools

SublimeText3 Linux new version
SublimeText3 Linux latest version

SublimeText3 Mac version
God-level code editing software (SublimeText3)

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

VSCode Windows 64-bit Download
A free and powerful IDE editor launched by Microsoft

EditPlus Chinese cracked version
Small size, syntax highlighting, does not support code prompt function