Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array lernt, den Wert mit der höchsten Wiederholungsrate zu finden

PHP-Array lernt, den Wert mit der höchsten Wiederholungsrate zu finden

青灯夜游
青灯夜游Original
2021-08-10 17:12:534699Durchsuche

Im vorherigen Artikel haben wir die Methode zum Zählen der Anzahl der Vorkommen von Zeichen in einer Zeichenfolge vorgestellt. Wenn Sie interessiert sind, können Sie auf den Link klicken, um → „PHP String Learning: Zählen der Vorkommen von Zeichen“ zu lesen. Nachdem wir nun die Zählmethode für die Anzahl der Zeichen eingeführt haben, werfen wir einen Blick auf Arrays. Dieses Mal zeigen wir Ihnen, wie Sie die Anzahl der Vorkommen von Array-Elementen zählen.

Wie der Titel schon sagt, besteht das Thema dieses Artikels darin, die Anzahl der Vorkommen von Array-Elementen zu zählen, dann die Anzahl der Vorkommen zu vergleichen, das Element mit den meisten Vorkommen zu finden (Wiederholungsrate) und seinen Wert und die Anzahl der Vorkommen auszugeben .

Schauen wir uns unten ein Beispiel an.

<?php
header("Content-Type: text/html;charset=utf-8");    //设置字符编码
$array = array(7,"hello",7,8,"world",9,10,10,"hello",10);
$frequency = array_count_values($array);   // 统计数组中所有值出现的次数
echo "每个元素对应的出现次数:";
var_dump($frequency);
echo "按照键值进行降序排序:";
arsort($frequency); // 按照键值对数组进行降序排序
var_dump($frequency);
$max_number = reset($frequency);//出现最多的次数值
$more_value = key($frequency);//出现次数最多的值
echo "数组中出现次数最多的值为:{$more_value},总共出现{$max_number}次";
?>

Lassen Sie uns den obigen Code analysieren und die Rolle jeder Schlüsselfunktion vorstellen.

  • array_count_values($array)Die Funktion kann alle Werte im $array-Array zählen und die Anzahl der Vorkommen jedes Array-Elements zählen; sie gibt ein assoziatives Array$Frequenz, sein Elementschlüsselname ist der Wert des ursprünglichen Arrays und der Schlüsselwert ist die Häufigkeit, mit der der Wert im ursprünglichen Array erscheint. <code>array_count_values($array)函数可以对$array数组中的所有值进行计数,统计每个数组元素的出现次数;会返回一个关联数组$frequency,其元素键名是原数组的值,键值是该值在原数组中出现的次数。

  • 这个返回的关联数组$frequency中的元素顺序是参考原数组$array的元素顺序,因此元素是零散排列的,没有规律。因此使用arsort($frequency)来按照键值对数组进行降序排序,这样键值(出现次数)最大的元素会在数组的开头。

  • 然后我们就可以使用reset($frequency)来将数组内部指针指向$frequency数组的第一个元素(该元素就是$frequency数组的当前元素了),并返回该元素,这样就获取到原数组中重复率最高的元素的出现次数。

  • 最后使用key($frequency)就可以获取$frequency数组当前元素的键名,即原数组的值。

看看输出结果为:

PHP-Array lernt, den Wert mit der höchsten Wiederholungsrate zu finden

可以看出$arrays

Die Reihenfolge der Elemente im zurückgegebenen assoziativen Array $frequenz basiert auf der Reihenfolge der Elemente des ursprünglichen Arrays $array, sodass die Elemente verstreut und unregelmäßig angeordnet sind. Verwenden Sie daher arsort($frequenz), um das Array in absteigender Reihenfolge nach Schlüsselwert zu sortieren, sodass das Element mit dem größten Schlüsselwert (Anzahl der Vorkommen) am Anfang des Arrays steht.

Dann können wir reset($frequenz) verwenden, um den internen Zeiger des Arrays auf das erste Element des $frequenz-Arrays zu verweisen (dieses Element ist das aktuelle Element des $frequenzarray ) und gibt das Element zurück und erhält so die Anzahl der Vorkommen des Elements mit der höchsten Wiederholungsrate im ursprünglichen Array.

Abschließend verwenden Sie key($frequenz), um den Schlüsselnamen des aktuellen Elements des $frequenz-Arrays abzurufen, bei dem es sich um den Wert des ursprünglichen Arrays handelt. 🎜🎜Sehen Sie sich das Ausgabeergebnis an: 🎜🎜PHP-Array lernt, den Wert mit der höchsten Wiederholungsrate zu finden🎜🎜🎜Es ist ersichtlich, dass im Array $arrays das Element mit der höchsten Wiederholungsrate (den meisten Vorkommen) die Zahl „ ist. 10". Dieses Element ist insgesamt 3 Mal aufgetaucht. 🎜🎜Okay, das ist alles. Wenn Sie noch etwas wissen möchten, können Sie hier klicken. → →🎜php-Video-Tutorial🎜🎜🎜Abschließend empfehle ich ein kostenloses Video-Tutorial zu PHP-Arrays: 🎜PHP-Funktions-Array-Array-Funktions-Video-Erklärung🎜, kommen Sie und lernen Sie! 🎜

Das obige ist der detaillierte Inhalt vonPHP-Array lernt, den Wert mit der höchsten Wiederholungsrate zu finden. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn