8791 sujets

Développement web côté serveur, CMS

Bonjour,


Ca fait maintenant un moment que j'essaye d'écrire un code php, ou que je cherche sur google, un moyen de compter combien de fois apparaît une nombre donnée dans un array.... je n'arrive pas, impossible... oO

J'ai un array sous la forme :

Array
(
[1] => Array
(
[1] => Array
(
[0] => 1
[1] => 2
[2] => 3
[4] => 5
[8] => 9
)

[2] => Array
(
[0] => 1
[1] => 2
[2] => 3
)



[4] => Array
(
[1] => 2
[4] => 5
[6] => 7
)

)
[2] => Array
(
...

...
)

Et là je voudrais compter par exemple dans $array[1] combien de fois apparait le chiffre 1... ici 2 fois...

Je ne trouve aucune moyen de coderune fonction pareille !!

J'ai déjà essayé avec in array count array count values..... bref tout, mais rien ne correspond à ce que je voudrais...
array_count_values() permet de faire ce que tu veux. Si tu avais posté ton VRAI tableau proprement et bien indenté je t'aurais bien pondu le code mais là ton post c'est une lettre au père Noël. Le scoop c'est que le père Noël n'existe pas.
Modifié par jb_gfx (13 Jul 2012 - 21:59)
Salut,

Je ne veux pas qu'on me fasse le code -_- !!

Puis j'ai déjà essayé avec mais impossible oO

Je voudrais par exemple dans chaque ligne et chaque colonne trouver le nombre qui apparait qu'une fois... C'est à dire par exemple dans $array[1][...] trouver LE chiffre qui apparait une fois... puis dans $array[...][1] LE chiffre qui apparait qu'une fois

<?php

Array
(
    [1] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [4] => 5
                    [8] => 9
                )

            [2] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                )

            [4] => Array
                (
                    [1] => 2
                    [4] => 5
                    [6] => 7
                )

            [6] => Array
                (
                    [0] => 1
                    [1] => 2
                    [4] => 5
                    [6] => 7
                )

            [7] => Array
                (
                    [0] => 1
                    [6] => 7
                    [7] => 8
                    [8] => 9
                )

            [8] => Array
                (
                    [2] => 3
                    [4] => 5
                    [6] => 7
                    [7] => 8
                )

            [9] => Array
                (
                    [0] => 1
                    [6] => 7
                    [7] => 8
                    [8] => 9
                )

        )

    [2] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [2] => 3
                    [4] => 5
                    [5] => 6
                )

            [2] => Array
                (
                    [0] => 1
                    [2] => 3
                    [5] => 6
                )

            [3] => Array
                (
                    [0] => 1
                    [2] => 3
                    [4] => 5
                    [5] => 6
                )

            [4] => Array
                (
                    [4] => 5
                    [6] => 7
                )

            [7] => Array
                (
                    [0] => 1
                    [3] => 4
                    [6] => 7
                )

            [8] => Array
                (
                    [2] => 3
                    [3] => 4
                    [4] => 5
                    [5] => 6
                    [6] => 7
                )

        )

    [3] => Array
        (
            [2] => Array
                (
                    [0] => 1
                    [1] => 2
                    [5] => 6
                )

            [3] => Array
                (
                    [0] => 1
                    [4] => 5
                    [5] => 6
                    [7] => 8
                    [8] => 9
                )

            [5] => Array
                (
                    [0] => 1
                    [1] => 2
                )

            [7] => Array
                (
                    [0] => 1
                    [7] => 8
                    [8] => 9
                )

            [8] => Array
                (
                    [4] => 5
                    [5] => 6
                    [7] => 8
                )

            [9] => Array
                (
                    [0] => 1
                    [5] => 6
                    [7] => 8
                    [8] => 9
                )

        )

    [4] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [1] => 2
                    [4] => 5
                    [5] => 6
                )

            [3] => Array
                (
                    [0] => 1
                    [4] => 5
                    [5] => 6
                )

            [4] => Array
                (
                    [1] => 2
                    [5] => 6
                    [6] => 7
                    [7] => 8
                )

            [5] => Array
                (
                    [0] => 1
                    [1] => 2
                    [3] => 4
                    [6] => 7
                )

            [6] => Array
                (
                    [0] => 1
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [6] => 7
                    [7] => 8
                )

            [8] => Array
                (
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [6] => 7
                    [7] => 8
                )

            [9] => Array
                (
                    [5] => 6
                    [6] => 7
                    [7] => 8
                )

        )

    [5] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [5] => 6
                )

            [2] => Array
                (
                    [0] => 1
                    [1] => 2
                    [2] => 3
                    [3] => 4
                    [5] => 6
                )

            [4] => Array
                (
                    [1] => 2
                    [2] => 3
                    [5] => 6
                    [7] => 8
                    [8] => 9
                )

            [6] => Array
                (
                    [0] => 1
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [7] => 8
                )

            [7] => Array
                (
                    [1] => 2
                    [3] => 4
                    [7] => 8
                    [8] => 9
                )

            [8] => Array
                (
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [7] => 8
                )

            [9] => Array
                (
                    [5] => 6
                    [7] => 8
                    [8] => 9
                )

        )

    [6] => Array
        (
            [2] => Array
                (
                    [1] => 2
                    [2] => 3
                    [3] => 4
                    [5] => 6
                )

            [3] => Array
                (
                    [2] => 3
                    [5] => 6
                )

            [4] => Array
                (
                    [1] => 2
                    [2] => 3
                    [5] => 6
                    [6] => 7
                    [8] => 9
                )

            [5] => Array
                (
                    [1] => 2
                    [2] => 3
                    [3] => 4
                    [6] => 7
                    [8] => 9
                )

            [6] => Array
                (
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [6] => 7
                )

            [7] => Array
                (
                    [1] => 2
                    [3] => 4
                    [6] => 7
                    [8] => 9
                )

        )

    [7] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [2] => 3
                    [5] => 6
                    [8] => 9
                )

            [2] => Array
                (
                    [0] => 1
                    [2] => 3
                    [5] => 6
                    [6] => 7
                )

            [4] => Array
                (
                    [2] => 3
                    [4] => 5
                    [5] => 6
                    [6] => 7
                    [7] => 8
                    [8] => 9
                )

            [5] => Array
                (
                    [2] => 3
                    [6] => 7
                    [8] => 9
                )

            [6] => Array
                (
                    [4] => 5
                    [5] => 6
                    [6] => 7
                    [7] => 8
                )

            [7] => Array
                (
                    [0] => 1
                    [6] => 7
                    [7] => 8
                )

            [8] => Array
                (
                    [6] => 7
                    [7] => 8
                )

        )

    [8] => Array
        (
            [3] => Array
                (
                    [2] => 3
                    [8] => 9
                )

            [5] => Array
                (
                    [1] => 2
                    [2] => 3
                    [6] => 7
                    [8] => 9
                )

            [6] => Array
                (
                    [1] => 2
                    [6] => 7
                    [7] => 8
                )

            [8] => Array
                (
                    [1] => 2
                    [6] => 7
                    [7] => 8
                )

            [9] => Array
                (
                    [6] => 7
                    [7] => 8
                )

        )

    [9] => Array
        (
            [1] => Array
                (
                    [0] => 1
                    [5] => 6
                )

            [3] => Array
                (
                    [0] => 1
                    [5] => 6
                )

            [4] => Array
                (
                    [1] => 2
                    [5] => 6
                    [6] => 7
                )

            [5] => Array
                (
                    [1] => 2
                    [3] => 4
                    [6] => 7
                )

            [6] => Array
                (
                    [1] => 2
                    [3] => 4
                    [5] => 6
                    [6] => 7
                )

        )

)
?>



Mais là j'ai beau chercher je ne vois pas comment procéder, donc si vous pouvez me donner des pistes....
Bah dans ton deuxième post tu demandes pas du tout la même chose que dans le premier. T'es sûr de toi maintenant ?
Effectivement...


Dans le premier je demande comment compter le nombre de fois qu'apparait un nombre dans array... mais ceci afin de lancer une fonction si le nombre en question apparait une fois... d'où ma question dans mon deuxième message...
Non ce n'est pas ce que je cherche, ceci sert à supprimer les doublons... Ce que je cherche c'est de pouvoir savoir combien de fois apparait un élément dans un array à plusieurs dimensions...

Du coups j'ai réussi en faisant comme ça :


<?php
$ligne = 1;
	for ($col = 1; $col <= 9; $col++)
	{
		for ($ligne2 = 1; $ligne2 <= 9; $ligne2++)
		{
			if (is_array($liste_candidats[$ligne2][$col]))
			{
				foreach ($liste_candidats[$ligne2][$col] as $value)
				{
					$array[] = $value;
				}
			}
		}
		
		$array_count = array_count_values($array);
			
		foreach ($array_count as $element => $value)
		{
			if ($value == 1)
			{
				for ($ligne = 1; $ligne <= 9; $ligne++)
				{
					if (is_array($liste_candidats[$ligne][$col]))
					{
						foreach ($liste_candidats[$ligne][$col] as $valeur)
						{
							if ($valeur == $element)
							{
								$grille[$ligne][$col] = $element;
							}
						}
					}
				}
			}
		}
		
		$array = array();
		
	}

?>