Autor | Zpráva | ||
---|---|---|---|
Janicek Profil * |
#1 · Zasláno: 27. 5. 2013, 19:54:50
Přeji pěkný podvečer.
Potřeboval bych poradit s tímto kódem: <?php $text = <<<'TEXT' for($CISLO = 0;$CISLO < 55;$CISLO++){ echo $CISLO . "<br>\n"; } TEXT; $soubor = fopen("text.txt", "a+"); fwrite($soubor, $text); fclose($soubor); ?> Ale po vytvoření souboru se v něm nachází: for( = 0; < 55;++){ echo . "<br> "; } Avšak já bych potřeboval, aby se v souboru zobrazilo: 1 2 3 4 5 6 7 .. Méně slov a více kódu :) Doufám, že moje ukázky vystihují to, s čím bych potřeboval poradit. Jde tedy něco takového vůbec udělat? Pokud ano, mohl by někdo upravit tento kód na funkční nebo dát dobrou radu? Děkuji |
||
DJ Miky Profil |
Konstrukcí
$text = <<<TEXT přiřadíš do proměnné $text samotný text, který se jako PHP kód nezpracovává, pouze se v něm nahradí případné proměnné (zde $CISLO) za jejich hodnotu (zde nic, protože není definovaná).
Stačí pouze nechat cyklus jako PHP kód a místo vypisování pomocí echo přidávat hodnoty do proměnné $text . Bude to vypadat takto:
$text = ''; for($cislo = 0; $cislo < 55; $cislo++) { $text .= $cislo . "\n"; } // následné zapsání do souboru Mimochodem, řadu čísel vygeneruješ jednodušeji pomocí funkce range() a spojíš je do řetězce pomocí funkce implode(): $hodnoty = range(0, 55); // výsledkem je pole hodnot 0, 1, 2, ..., 55 $text = implode("\n", $hodnoty); // spojí pole do řetězce a hodnoty proloží novým řádkem, tedy výsledkem bude 0\n1\n2...\n55 // následné zapsání do souboru stejným způsobem |
||
Časová prodleva: 11 let
|
0