Php 由换行符分隔的文件中最常出现的字的数组。
如何从由换行符(\n)分隔的文件中获取最前面出现的单词数组 示例文件:Php 由换行符分隔的文件中最常出现的字的数组。,php,arrays,string,explode,Php,Arrays,String,Explode,如何从由换行符(\n)分隔的文件中获取最前面出现的单词数组 示例文件: person person dog cat person lemon orange person cat dog dog 文件中的单词没有特定的顺序 我将如何使其表现为如下所示 echo$top[0]//输出:人 echo$top[1]//输出:狗 等等 提前谢谢 我可能会使用这样的方法: 逐行读取文件,每次检测到一个单词时,向数组项添加+1,计算每个单词被看到的次数 对数组进行排序 没有经过真正的测试,但我想类似的
person
person
dog
cat
person
lemon
orange
person
cat
dog
dog
文件中的单词没有特定的顺序
我将如何使其表现为如下所示
echo$top[0]//输出:人echo$top[1]//输出:狗
等等
提前谢谢 我可能会使用这样的方法:
- 逐行读取文件,每次检测到一个单词时,向数组项添加+1,计算每个单词被看到的次数
- 对数组进行排序
没有经过真正的测试,但我想类似的东西应该会起作用:
(应该比文件大时更好:无需将整个文件加载到内存中)
现在,
$words
数组中的第一个键是最常用的词,对应的值是它在文件中被看到的次数。我可能会使用这样的值:
$lines = file("theFile.txt");
var_dump(array_count_values($lines));
- 逐行读取文件,每次检测到一个单词时,向数组项添加+1,计算每个单词被看到的次数
- 对数组进行排序
没有经过真正的测试,但我想类似的东西应该会起作用:
(应该比文件大时更好:无需将整个文件加载到内存中) 现在,
$words
数组中的第一个键是最常用的单词——对应的值是它在文件中的显示次数
$lines = file("theFile.txt");
var_dump(array_count_values($lines));
演示:
要从结果数组中获取第一个元素(出现次数最多的单词),可以执行以下操作:
$arr = array("person", "person", "cat", "dog", "cat");
$newArr = array_count_values($arr);
echo key($newArr); // "person"
演示:
演示:
要从结果数组中获取第一个元素(出现次数最多的单词),可以执行以下操作:
$arr = array("person", "person", "cat", "dog", "cat");
$newArr = array_count_values($arr);
echo key($newArr); // "person"
演示:如果两个计数相同怎么办?很好,重点是。。。但在我的情况下发生这种情况的可能性很小。如果两个人的计数相同呢?好的,重点是。。。但在我的情况下发生这种情况的可能性很小。这看起来像是我可以处理的事情,但我如何才能检索到出现率最高的单词?这看起来像是我可以处理的事情,但我如何才能检索到出现率最高的单词?