假设我想跟踪单词出现的次数…
//Update the totals
foreach($arrayOfWords as $word) {
$totals[$word] = $totals[$word] + 1;
}
现在,想象一下,这小段代码被称为数百次,每次都在$arrayWords中每次都有成千上万个新单词,从而导致关联数组$totals中有数百万个条目.尽管操作很简单(将现有值加1),但是随着我们处理数百万个条目,PHP的速度大大降低.
您能想到一种更好的方法来计数事件(最好不使用数据库)吗?
解决方法:
这是加快速度的一种方法
//Update the totals
foreach($arrayOfWords as $word) {
$totals[$word]++;
}
无需在哈希中搜索相同的键两次就可以增加其值.
另外,(仅作说明)我看不到$totals的长度怎么会超过$arrayOfWords的长度,除非您在代码中其他位置的$totals中添加单词.