Servus,
raus, jedoch soll er array[0] bis array[n] ausgeben.
Das tut "er" auch. Allerdings gibt preg_match_all ein mehrdimensionales Array zurueck, wobei (in der Standardeinstellung) $matches[0] ein Array des Gesamtpatterns jeder Fundstelle ist, $matches[1] entsprechend das erste Subpattern, usw.
Bei der print_r Variante stimmen stimmt alles, nur die Ausgabe in meinem Ansatz stimmt nicht.
Das obige haettest du mittels print_r eigentlich auch sehen muessen ;)
print_r "$title>";
Du moechtest hier also hoechstwahrscheinlich folgendes notieren:
echo $title[1] .">";
Desweiteren rate ich dir, dir das Kapitel über Strings einmal genau durchzulesen. Beinahe alle Double Quotes (Anführungszeichen, "), die du hier verwendest, kannst du dir nämlich sparen und stattdessen Single Quotes (Hochkomma, ') verwenden, damit PHP nicht alle Strings nach Variablen und Sonderzeichen parsen muss um dann festzustellen, dass ohnehin keine drin sind.
Ausserdem ist es zwar moeglich, Sachen wie
echo "Ellenlanger Text $variable mehr Text";
zu notieren, aber es ist a) unübersichtlich für den Leser des Codes und b) zeitaufwendiger für den Parser, als wie folgt vorzugehen:
echo 'Ellenlanger Text '. $variable .' mehr Text';
Zu guter letzt möchte ich dir noch davon abraten, Kurzschreibweisen wie
if ($condition) doSomething();
else doSomethingElse();
zu verwenden, da sie zum einen extrem unübersichtlich sind und zum anderen die Anweisungen schlecht (bzw. garnicht) zu erweitern sind.
Besser:
if ($condition) {
doSomething();
} else {
doSomethingElse();
}
Gruss
Patrick
sh:( fo:| ch:? rl:( br:> n4:( ie:% mo:) va:} de:> zu:) fl:| ss:| ls:[ js:|