Klassen und ich !


Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Wipeout

Erfahrenes Mitglied
#1
Hallo,

ich habe folgende Klasse erstellt
Code:
    class classText{
        public static function kursiv(STRING $text)
        {
?>
            <i> <?php echo $text; ?></i>
<?php
            return;

        }
    }
Sie soll eigentlich nur zum üben sein da ich mich noch nicht wirklich mit Klassen beschäftigt habe.
Die Klasse soll einfach einen Text Kursiv anzeigen.
Und da ist das Problem das funktioniert nicht ;)
Meine Frage nun ist warum nicht ?

Ich versuche mit
Code:
classText::kursiv($text);
Die Klasse aufzurufen, aber irgendwie klappt das nicht es gibt aber auch keinen Fehler :(

Kann mir jemand helfen ?
 

ComFreek

Mod | @comfreek
Moderator
#2
Die Klasse aufzurufen, aber irgendwie klappt das nicht es gibt aber auch keinen Fehler :(
Du scheinst ?> ... <?php als Ausgabemechanismus zu nutzen. Das ist soweit okay, nur solltest du wissen, dass dieser Mechanismus *sofortig* ist. Wenn PHP also deine PHP-Datei mit der Klasse parst und interpretiert, dann geht es bis zum "STRING $text) {", gibt dann "<i>" aus, fügt "echo $text;" in die Methodendefinition weiter ein, gibt dann "</i>" aus und fügt "return" und den ganzen Rest zu der interpretierten Version deiner PHP-Datei hinzu.

Deine Datei wird also effektiv wie folgt interpretiert:
PHP:
class classText {
  public static function kursiv(string $text) {
    echo $text;
    return;
  }
}
Brauchst du einen Ausgabemechanismus, wo Ausgabezeitpunkt != Parsezeitpunkt, so musst du eben echo nutzen: "echo '<i>' . $text . '</i>';"
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Neue Beiträge