» »

[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?

dukedl ::

lp dukedl

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.
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:
echo vrnjenArray['i']; //bi vrnilo 3

Yacked2 ::

sebavet je izjavil:

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:
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:

<?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 ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

PL SQL problem

Oddelek: Programiranje
15917 (486) killa bee
»

C# - domača naloga

Oddelek: Programiranje
162207 (1748) IceBoX
»

[Android]GridView vprasanje

Oddelek: Programiranje
12944 (825) KernelPanic
»

PHP uganka (za mojstre)

Oddelek: Programiranje
111349 (1015) fiction
»

c++ konzolske aplikacije problem

Oddelek: Programiranje
8834 (720) Tutankhamun

Več podobnih tem