Autor Zpráva
drobek
Profil *
Dobrý den,

řeším jeden problém ohledně vkládání obsahu souboru pomocí php funkce include. Obsah vkládaného souboru píši normálně od kraje. Ve zdrojovém kódu se mi přes include zobrazí obsah taky hned od kraje, existuje nějaká funkce, nebo jiná možnost, jak docílit toho, že by se mi obsah zobrazil například 5 tabulátorů od kraje (pořád mluvíme o zobrazení ve zdrojovém kódu) aniž bych musel toto "odtabulátorování" provádět na každém ze vložených souborů?

Snad je dotaz srozumitelný. Děkuji
tiso
Profil
Neviem o takej možnosti...
Buď konkrétny - o aký zdrojový kód sa jedná?
drobek
Profil *
Jde o to, aby obsah pomocí include (nadpis + text) nebyl ve zdrojovém kódu nepřehledný a nezobrazoval takhle:

<body>
<div id="obal">
<div id="obsah">
<h1>nadpis</h1>
<p>text
</div>
</div>
</body>


ale uspořádaně:

<body>
<div id="obal">
<div id="obsah">
<h1>nadpis</h1>
<p>text
</div>
</div>
</body>
drobek
Profil *
omlouvám se, oprava

Jde o to, aby obsah pomocí include (nadpis + text) nebyl ve zdrojovém kódu nepřehledný a nezobrazoval takhle:



<body>
<div id="obal">
<div id="obsah">
<h1>nadpis</h1>
<p>text
</div>
</div>
</body>



ale uspořádaně:


<body>
<div id="obal">
<div id="obsah">
<h1>nadpis</h1>
<p>text
</div>
</div>
</body>
tiso
Profil
Jednoducho:

echo '
<body>
<div id="obal">';
echo '
<div id="obsah">
<h1>nadpis</h1>';
echo '
<p>text</p>
</div>';
echo '
</div>
</body>'

Čo sa prehľadnosti týka, tak odsadenie je úplne zbytočné pre návštevníkov stránok, osobne to robím inak: http://users.blog.sk/detail.html?a=8ad50730f5cb2f6bac88101217f6ccdd
drobek
Profil *
web mám ovšem (zjednodušeně) vyřešen tímto způsobem:



<body>
<div id="obal">
<div id="obsah">
<?php
include ("stranka.php")
?>
</div>
</div>
</body>
tiso
Profil
...tak Ti ostáva buď vedieť koľko máš odsadiť v tom include súbore a odsadzovať tam:
<
.<
..<
...include
..<
.<
<

stranka:
...<
....<
...<

alebo celý výstup z include súbor preparsovať a vložiť tam potrebný počet odsadení...
drobek
Profil *
Té první možnosti se právě snažím vyhnout. Můžeš ale blíže vysvětlit tu druhou možnost, nejlépe na krátkém příkladě? Děkuji
llook
Profil
Nějak takhle:
function vlozit_s_odazenim($soubor, $uroven) {

ob_start();
include $soubor;
$vystup = ob_get_contents();
ob_end_clean();
echo str_replace("\n", "\n" . str_repeat("\t", $uroven));
}
drobek
Profil *
Super, děkuju moc, to je ono :) jen tam je drobná chybička:



function vlozit_s_odsazenim($soubor, $uroven) {
ob_start();
include $soubor;
$vystup = ob_get_contents();
ob_end_clean();
echo str_replace("\n", "\n" . str_repeat("\t", $uroven), $vystup);
}
Toto téma je uzamčeno. Odpověď nelze zaslat.

0