Ich lese ein Verzeichnis aus und lasse mir die Dateien als Verweise auflisten. Den Dateinamen nehme ich als Verweistext. Das ist mit problemen Verbunden da ich keine Umlaute oder Leerzeichen verwenden kann. Deshalb möchte ich die einzelnen Dateien auslesen und die Überschrift <h2>Überschrift</h2> als Verweistext nutzen.
Dazu möchte ich die Dateien auslesen, die mir als Variable schon vorliegt, und den Teil zwischen <h2>TEXT</h2> dieser Datei als Verweistext ausgeben.
Ich hoffe das ich mich nicht zu unklar ausgedrückt habe.
Ich würde mich über eine Info von Euch sehr freuen. DANKE
Einfacher, sinnvoller, vernünftiger und besser wäre es, wenn Du einfach dafür sorgst, dass alle Dateinamen gültige Zeichen enthalten (Lerrzeichen, Bindestrich und Umlaute gehören nicht dazu)
Persönlich halte ich die Wahrscheinlichkeit, dass eine Überschrift Leerzeichen oder Co. enthält für größer, als bei Dateinamen, aber gut.
Fatal error: Cannot redeclare extractstring() (previously declared in D:ApacheServerxampphtdocskenyanavitest.php:38) in D:ApacheServerxampphtdocskenyanavitest.php on line 38
Zu der Fehlermeldung:
Wenn du die Funktion ExtractString innerhalb einer Schleife definierst, wird PHP bei jedem Durchlauf der Schleife versuchen, die Funktion zu erkennen. Da die Funktion aber bereits nach dem ersten Durchlauf der Schleife vorhanden ist, wird dir diese Fehlermeldung ausgegeben, weil eine Funktion nur einmal in einem Script definiert werden darf. Setze die Definition einfach vor die Schleife und du wirst dieses Problem nicht mehr haben.
Wenn es dann immer noch nicht funktioniert, poste den neuen Code mit Fehlermeldungen etc..
s.a. FAQ - Fatal error: Cannot redeclare ... (previously declared in ...) in ... on line ...
P.S.: Wenn du langen Quelltext hast, poste ihn doch nicht hier direkt, sondern schreibe ihn in ein Nopaste und stelle den Link dazu hier rein.
Beachte mal, in welcher Reihenfolge du Aktionen ausführst. Es bringt nicht sehr viel, ein preg_match() auf eine Variable anzuwenden, die erst einige Zeilen später definiert wird. Hier habe ich dir deinen Quelltext mal kommentiert.
Und hier ist mal ein Lösungsvorschlag von mir.