Maison >développement back-end >tutoriel php >Conseils pour apprendre les tableaux PHP et utiliser des fonctions pour extraire les valeurs maximales et secondes maximales
Dans l'article précédent → "Apprentissage des tableaux PHP : comparaison des éléments d'un tableau et obtention des première et deuxième plus grandes valeurs", nous avons introduit l'utilisation des boucles for pour comparer les tailles des éléments du tableau un par un et obtenir le maximum et deuxièmes valeurs du tableau. La méthode de la deuxième plus grande valeur. Pensez-vous que cette méthode est un peu compliquée ? En fait, on peut utiliser des fonctions PHP pour obtenir la valeur maximale et la deuxième valeur maximale. Découvrons-le ~
Le thème de cet article est le même que le précédent : " Étant donné un ensemble de nombres, calculez Trouvez sa valeur maximale et sa deuxième valeur maximale". Mais nous n'utilisons pas les boucles for et les instructions if cette fois-ci. Nous utilisons les fonctions intégrées de PHP pour y parvenir.
Définissez un tableau contenant un tel ensemble de données :
$arr = array(555,5,1,429,18,21,52,2,52,9,3,);
Vous souhaitez retirer la valeur maximale 555 et la deuxième valeur maximale 429.
Idée d'implémentation 1 :
En fait, il existe une fonction max() intégrée en PHP, qui peut être utilisée pour obtenir la valeur maximale dans le tableau en une seule étape ; du tableau, et le reste. Utilisez ensuite la fonction max() dans les éléments suivants pour obtenir la valeur maximale.
Jetons un coup d'œil au code d'implémentation :
<?php header("content-type:text/html;charset=utf-8"); $arr = array(555,5,1,429,18,21,52,2,52,9,3,); $max = max($arr); $arr = array_diff($arr,array($max)); $secMax = max($arr); echo "最大值为".$max.",第二大值为".$secMax; ?>
Analyse :
Utilisez max($arr)
pour obtenir la valeur maximale du tableau et attribuez-la à $max
. max($arr)
获取数组最大值赋值给$max
。
然后创建一个只包含$max一个值的新数组,将该数组和$arr数组比较,取差值;简单来说,array_diff($arr,array($max))
就是用来删除最大值$max
。
最后在调用一次max($arr)
在剩下的元素中取最大值,就获得到原数组的第二大元素,将该值赋给$secMax
array_diff($arr,array($max)) code> permet de supprimer la valeur maximale <code>$max
.
Enfin, appelez max($arr)
pour obtenir la valeur maximale parmi les éléments restants, puis vous obtiendrez le deuxième plus grand élément du tableau d'origine, et attribuerez cette valeur à $ secMax
.
Le résultat de sortie est donc :
Idée d'implémentation 2 : Vous pouvez trier le tableau par ordre croissant ou décroissant en fonction de la taille des valeurs des éléments, puis de la valeur maximale et de la seconde. la plus grande valeur du tableau est : le premier et le deuxième (ordre décroissant) ou le premier au dernier et l'avant-dernier (ordre croissant) éléments//升序排序 $arr = array(555,5,1,429,18,21,52,2,52,9,3,); sort($arr); var_dump($arr);
//降序排序 $arr = array(555,5,1,429,18,21,52,2,52,9,3,); rsort($arr); var_dump($arr);
Nous pouvons simplement supprimer ces deux éléments. Jetons un coup d'œil au code d'implémentation :
<?php header("content-type:text/html;charset=utf-8"); $arr = array(555,5,1,429,18,21,52,2,52,9,3,); //降序排序 rsort($arr); $max = $arr[0]; $secMax = $arr[1]; echo "最大值为".$max.",第二大值为".$secMax."<br>"; //升序排序 sort($arr); $len = count($arr); //数组长度 $max = $arr[$len-1]; $secMax = $arr[$len-2]; echo "最大值为".$max.",第二大值为".$secMax; ?>Résultats de sortie :
La méthode de l'ordre croissant doit également prendre en compte le problème de la longueur du tableau, tandis que la méthode de l'ordre décroissant est plus simple.
D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je recommande un tutoriel vidéo gratuit sur les tableaux PHP : 🎜Explication vidéo de la fonction tableau de fonctions PHP🎜, venez apprendre ! 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!