Diskuze: Scitani prvku v poli

PHP PHP Scitani prvku v poli American English version English version

Aktivity (1)
Avatar
BlugW
Redaktor
Avatar
BlugW:11.5.2016 18:36

Hoj,

mam takto array:

array(1,1,1,2,2,3,1,2,4,3,3,3,5);

A potreboval bych nejak zjistit, kolik x se objevuje jednotlivy prvek v poli.
napr. 1 se tam objevuje 4x, 2 zase 3x, atd..

Zrovna me nenapada jak to udelat. :(
Dokaze nekdo poradit?

Diky

Odpovědět 11.5.2016 18:36
Pořiď si mac na www.appletrh.cz. Novinky a zajímavosti ze světa Apple na https://www.applemagazin.com
Avatar
Dominik Klapuch:11.5.2016 18:49

Ahoj, zkus tohle:

$pole = array(1,1,1,2,2,3,1,2,4,3,3,3,5);
$soucet = [];
foreach($pole as $cislo) {
    if(isset($soucet[$cislo]))
        ++$soucet[$cislo];
    else
        $soucet[$cislo] = 1;
}

var_dump($soucet);

V klíči najdeš dané číslo a hodnota je počet výskytů

Nahoru Odpovědět  +3 11.5.2016 18:49
Kód a data patří k sobě.
Avatar
BlugW
Redaktor
Avatar
Odpovídá na Dominik Klapuch
BlugW:12.5.2016 11:24

Díky, vyzkouším :)

Nahoru Odpovědět 12.5.2016 11:24
Pořiď si mac na www.appletrh.cz. Novinky a zajímavosti ze světa Apple na https://www.applemagazin.com
Avatar
Michal Struna:4.6.2016 22:33

Ahoj, jenom dodám, že v PHP je pro tento účel už zabudovaná funkce array_count_va­lues().

$pole = array(1,1,1,2,2,3,1,2,4,3,3,3,5);
print_r(array_count_values($pole));

Výsledkem bude to samé, co v předchozím případě - asociativní pole, kde klíčem je hledaný znak a hodnotou počet znaků v původním poli:

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

Akceptované řešení
+20 Zkušeností
+1 bodů
Řešení problému
 
Nahoru Odpovědět  +2 4.6.2016 22:33
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 4 zpráv z 4.