några sidor på nätet om PHP programmering

Sök efter  
Börja här Uppgifter Testa dig själv Tips Sidokarta mm. Länkar Sök

Tilldelning Logiska operander Specialare HERE docs

1.2.4 HERE docs

En specialare lånad från PEARL är s.k. HERE docs. Dessa kan vara användbara för att få mer komplicerad text in i en variabel.

<?php
$variabel
= <<< HERE
    Här får du skriva vad du vill. Det är helt OK med
    "flygare" av 'bägge slagen'. Du får
    även skriva vanlig html:
    <font face="arial" size="6">HERE</font>
    Detta kan vara användbart för t.ex. formar...
    Men observera att:
            tabulatorer och annan formatering
            inte kommer att komma med.
            Inte heller radbyten...
    För att avsluta skriver du följande rad
    (som MÅSTE komma direkt från marginalen
    dra inte in denna rad):
HERE;echo $variabel;

echo
"<hr>";
function
aa()
{
    
$en_till_variabel = <<< TESTA
        Man måste inte använda HERE som ord bara man sätter
        samma ord som avslutning med ett ;-tecken efter ordet
        Ordet måste alltid finnas vid marginalen (se nästa rad).
TESTA;    return $en_till_variabel;
}
echo
aa();
?>
Listning 1.2.4.1 - samples/here1.php

Här får du skriva vad du vill. Det är helt OK med "flygare" av 'bägge slagen'. Du får även skriva vanlig html: HERE Detta kan vara användbart för t.ex. formar... Men observera att: tabulatorer och annan formatering inte kommer att komma med. Inte heller radbyten... För att avsluta skriver du följande rad (som MÅSTE komma direkt från marginalen dra inte in denna rad):
Man måste inte använda HERE som ord bara man sätter samma ord som avslutning med ett ;-tecken efter ordet Ordet måste alltid finnas vid marginalen (se nästa rad).
Resultat av listning 1.2.4.1

Output buffers

En besläktad sak är s.k output buffering. Se nedanstående exempel.

<?php
    
# starta output buffering
    
ob_start();

    
# kör kod som normalt skulle skriva direkt till sidan
    
highlight_string("<font color=\"red\">TEST</font>");

    
# fånga upp det som buffrats
    
$a = ob_get_contents ();

    
# töm output buffer OBS! PHP 4.3.0 eller nyare
    
ob_clean();

    
# denna variabel innehåller nu det som skulle skrivits
    # till sidan...
    
echo $a;
?>
Listning 1.2.4.2 - samples/here2.php

<font color="red">TEST</font>
Resultat av listning 1.2.4.2

   Börja härOperanderHERE docs