Kirjautuminen

Haku

Tehtävät

Keskustelu: Nettisivujen teko: |:lla erotetusta merkkijonosta moniulotteinen taulukko

jideko [06.06.2006 21:14:33]

#

Minulla on tiedostossa merkkijonoja kuten alla.
Lauri|3|0|0|0|4|6|4|4|8|8|10|8|12|12|15|12|16|16|16|16|20|20|20|20|24|24|25|24|28|30|28|30
Siinä on nimen perässä 32 numeroa.

Nyt haluaisin näistä moniulotteisen taulukon, jossa numerot on neljän ryhmissä. Vaikea selittää, selventäisikö tämä mun yritys.

<?php
$players=file("guesses.txt");

$guesses=array();
foreach ($players as $player){
	$sep=explode("|", $player);

	for($i=0;$i<count($sep);$i++) {
		for($b=0;$b<4;$b++) {
			$guesses[$sep[0]][(ceil(($i+1)/4)-1)][$b]=$sep[$i+1];
		}
	}
}

print_r($guesses);
?>

Mikähän mättää kun muuten toimii niinkun pitää mutta noita nimen perässä olevia numeroita ei tule taulukkoon.

Merri [06.06.2006 21:18:22]

#

Poista [$b]

Teet tällä hetkellä $guesses-taulukon muotoon

$guesses[X][Y][0]
$guesses[X][Y][1]
$guesses[X][Y][2]
$guesses[X][Y][3]

Nämä kaikki neljä sisältävät saman arvon.

Muoks!

Hmm, vähän monimutkaisempaa. Elikkä muuta sittenkin niin, että $i kasvaa neljän väleillä, sen jälkeen täyte tulee muotoon = $sep[$i+$b+1] ... jos tahdot päästä ilman ceil-leikkejä, niin lisää vielä yksi muuttuja, jota kasvatat aina yhdellä jokaista $i:n looppia kohti (ts. loopin lopuksi).

Vastaus

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

Tietoa sivustosta