Tata wrote:Wo und wie soll die $o definiert sein?
Das kommt auf den Kontext an.
$o wird als globale Variable schon in
cms.php definiert und dient dazu HTML dem Seiteninhalt voranzustellen. Wenn Du wirklich etwas in $o speichern möchtest, musst Du die Variable innerhalb einer Funktion verfügbar machen:
Ich vermute aber mal, dass Du $o in Deiner Funktion nur lokal verwenden möchtest, denn sitr() gibt am Ende mit return $o; den Inhalt der Variable zurück. Vielleicht solltest Du es besser vermeiden bereits woanders definierte Variablenbezeichner als eigene, nur in einer eigenen Plugin-Funktion gültige, Bezeichner zu verwenden. Dadurch bleibt der Code übersichtlicher und es gibt weniger Verwechslungen.
Im konkreten Fall kommt die Warnung, weil Du an die (noch nicht initialisierte) Variable $o mittels " .= " etwas anhängen möchtest, obwohl die Variable noch nicht existiert (undefiniert ist).
Die Lösung ist, die Variable ganz am Anfang der Funktion einfach "leer" zu initialisieren:
Code: Select all
function sitr(){
global $plugin_cf, $plugin_tx, $pth, $tx;
// declare variables
...
$o = '';
also ohne den Punkt vor dem Gleichheitszeichen.