Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: PHP: Montako kertaa sama nimi esiintyy

joah [03.12.2013 15:24:13]

#

Hei, jos minulla on tekstitiedostoissa nimet vaikka näin:

Jaakko
Maiju
Kalle
Jaakko
Mirja
Aaro
Mirja
Mirja

Pitäisi PHP-koodin tulosta näin:

Jaakko 2x
Maiju 1x
Kalle 1x
Mirja 3x
Aaro 1x

Eli koodin pitäisi eroitella kaikki nimet, ja printtaa ne, mutta jos niitä on useampi, näytä vain yksi, ja kuinka monta kertaa .txt filessä olisi se.

Miten siis toteuttaa?

Kysy, jos jäi epäselväksi.

Kiitos jo vastauksista!

PS. Nimet pitäisi saada näkyviin ketä on eniten tiedostossa -> vähiten (eli suurin kerroinmäärä -> pienin kerroinmäärä). Tässä yllä oleva koodi, jos näin tehtäisi:

Mirja 3x
Jaakko 2x
Maiju 1x
Kalle 1x
Aaro 1x

Lebe80 [03.12.2013 15:35:27]

#

Käyt loopilla läpi ja lisäät lukumäärät vaikka array-muuttujaan, jonka solun nimi on ihmisen nimi. Lopuksi sorttaat lukumäärän mukaan.

joah kirjoitti:

Kysy, jos jäi epäselväksi.

Mikä näin yksinkertaisessa tehtävässä on sinusta se suurin ongelma?

Metabolix [03.12.2013 15:36:45]

#

<?php
// Luetaan tiedosto. Tulos: array("nimi", "toinen")
$nimet = file("nimet.txt", FILE_IGNORE_NEW_LINES | FILE_SKIP_EMPTY_LINES);

// Lasketaan määrät. Tulos: array("nimi" => 1, "toinen" => 1)
// Laskun voisi tehdä myös itse silmukalla.
$maarat = array_count_values($nimet);

// Järjestetään taulukko niin, että suurin luku tulee ensin.
arsort($maarat);

// Tulostetaan.
foreach ($maarat as $nimi => $maara) {
	echo "{$nimi} {$maara}x\n";
}

joah kirjoitti:

Kysy, jos jäi epäselväksi.

Mikä näin yksinkertaisessa tehtävässä on sinusta se suurin ongelma?

joah [16.12.2013 19:51:31]

#

Metabolix kirjoitti:

joah kirjoitti:

Kysy, jos jäi epäselväksi.

Mikä näin yksinkertaisessa tehtävässä on sinusta se suurin ongelma?

Sanoin näin, jos selitin asian epäselvästi, jolloin et olisi tajunnut, mistä edes puhun, jolloin olisin voinut seliittää asiaa.

Lebe80 kirjoitti:

joah kirjoitti:

Kysy, jos jäi epäselväksi.

Mikä näin yksinkertaisessa tehtävässä on sinusta se suurin ongelma?

Sama vastaus kun Metabolixille.

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta