Forum » Izdelava spletišč » [php] array
[php] array
sebavet ::
V php skripti imam spremenljivko $a=('1','2','1','3','1','3'); kako naj dobim iz arraya podatek, koliko elementov '1' je v $a, koliko '2' in koliko '3' elementov je v $a spremenljivki. Torej za vsak element posebej koliko krat se ponavlja? Gre to kako drugače kot, da preverjam vsako polje za vsak element posebej?
sebavet ::
hvala, kaj pa je možno določit recimo, mene zanima koliko krat se pojavlja je element '1' v arrayu?
dukedl ::
ok, pa si ti sploh pogledu link? prebral kaj piše?
array_count_values() returns an array using the values of array as keys and their frequency in array as values.
array_count_values() returns an array using the values of array as keys and their frequency in array as values.
lp dukedl
sebavet ::
ja sem prebral, funkcija izpiše kolikokrat se posamezen element pojavlja v arrayu. Nisem pa razumel, kje bi lahko definiral kateri element me zanima kolikokrat se pojavlja v arrayu. Oz. sem napačno vprašal, ali obstaja takšna funkcija, ki imam tako možnost.
Zgodovina sprememb…
- spremenil: sebavet ()
amacar ::
V tem vrnjenem arrayu imaš zapisano za vse elemente. Do tistega, ki te zanima lahko enostavno dostopaš, saj je v arrayu zapisan kot ključ, vrednost pa je število pojavitev tega elementa.
NE uporabljam php-ja ampak dostopaš verjetno nekako tako:
NE uporabljam php-ja ampak dostopaš verjetno nekako tako:
echo vrnjenArray['i']; //bi vrnilo 3
Yacked2 ::
V php skripti imam spremenljivko $a=('1','2','1','3','1','3'); kako naj dobim iz arraya podatek, koliko elementov '1' je v $a, koliko '2' in koliko '3' elementov je v $a spremenljivki. Torej za vsak element posebej koliko krat se ponavlja? Gre to kako drugače kot, da preverjam vsako polje za vsak element posebej?
Če imaš možnost, spremeni strukturo in naj bo 1 kjuč, vrednost pa število ponovitev, v tvojem primeru:
$a = ['1' => 3, '2' => 1, '3' => 2];
Korak naprej ni vedno ustrezen...sploh če si na robu prepada!
dukedl ::
napiši funkcijo, ki bo sprejela tvojo array spremenljivko in element ki ga iščeš.
nato uporabi array_count_values() in izpiši število ponovitev za tvoj element.
psevdokoda:
nato uporabi array_count_values() in izpiši število ponovitev za tvoj element.
psevdokoda:
function ($array, $searcitem) { $b = array_count_values($array) foreach ($b as $key => $value) if ($key == $searcitem) return $value }
lp dukedl
sebavet ::
hvala vsem za odgovor, res nisem dobro razumel funkcije da se array_count_values($array) uporabi tako:
zdaj je stvar rešena.
<?php $my_array = array( 1, 2, 3, 2, 2 ); $counts = array_count_values( $my_array ); echo $counts[2]; // produces 3 echo $counts[3]; // produces 1; ?>
zdaj je stvar rešena.
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | PL SQL problemOddelek: Programiranje | 917 (486) | killa bee |
» | C# - domača nalogaOddelek: Programiranje | 2207 (1748) | IceBoX |
» | [Android]GridView vprasanjeOddelek: Programiranje | 944 (825) | KernelPanic |
» | PHP uganka (za mojstre)Oddelek: Programiranje | 1349 (1015) | fiction |
» | c++ konzolske aplikacije problemOddelek: Programiranje | 834 (720) | Tutankhamun |