Compter nombre valeur positive dans un tableau

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Compter nombre valeur positive dans un tableau

Re: Compter nombre valeur positive dans un tableau

par fury_fatal » 16 janv. 2020, 20:41

Merci pour la méthode avec array_filter. Je n'avais pas compris comment utiliser ce filtre.

Re: Compter nombre valeur positive dans un tableau

par Saian » 16 janv. 2020, 16:56

Moué mais d'après le mini jeu de données il ne semble pas y avoir de valeurs négatives, seulement des valeurs égales à 0 ou positives.

Et je voulais justement proposer une autre alternative :
echo count(array_filter($infos, function ($value) { return $value > 0; }));

Re: Compter nombre valeur positive dans un tableau

par Spols » 16 janv. 2020, 16:07

la fonction de Saian comptera aussi les valeurs négative.

je pense que tu as la meilleure solution

Re: Compter nombre valeur positive dans un tableau

par Saian » 16 janv. 2020, 14:45

Salut, c'est pas une fonction exprès pour mais si l'idée c'est de ne pas compter toutes les valeurs à 0 :
echo count(array_diff(array_values($infos), [ 0 ]));
PS : après c'est vraiment le trip de faire ça en une ligne, ta boucle est très bien. Et à moins que quelqu'un nous sorte LA fonction qui permettrait de le faire, tu peux faire ta propre fonction à partir de ton code ou du mien. Mais ça n'a pas d'intérêt si tu utilises ce code à un seul endroit.

Compter nombre valeur positive dans un tableau

par fury_fatal » 16 janv. 2020, 13:58

Bonjour,
J'aimerais compter le nombre de valeur positive dans un tableau.
J'ai fait ceci :

Code : Tout sélectionner

$infos = [ "PV" => 10, "Attaque" => 0, "Défense" => 0, "Soin" => 10 ]; $nb_val_positive = 0; foreach ($infos as $info) { if ($info > 0) { $nb_val_positive++; } } echo $nb_val_positive: // Affiche: 2

Existe qu'il existe une fonction native permettant de le faire ?