dedlfix: Regex und strpos

Beitrag lesen

Tach!

if( strpos($zeile,'$suchbegriff=') !== false ) {
Jetzt müsste ich aber nach einem Begriff suchen, der immer so aufgebaut ist:
$config['xyz']

Das ist auch nur ein String, der sich problemlos mit strpos() finden lässt.

Mein Ziel ist es, ein Verzeichnis rekursiv zu durchsuchen, um alle möglichen $config-Werte ausfindig zu machen.

Dann nimm den RecursiveDirectoryIterator zusammen mit dem RecursiveIteratorIterator. Der erste läuft verschachtelt über ein Verzeichnis und der zweite macht es flach, so dass ein einfaches foreach reicht, um alles zu durchlaufen. Zudem kann man dem RecursiveDirectoryIterator-Konstruktor mitgeben, dass er . und .. ignoriert.

<pre>  
<?php  
  
$rdi = new RecursiveDirectoryIterator(__DIR__, FilesystemIterator::KEY_AS_PATHNAME | FilesystemIterator::CURRENT_AS_FILEINFO | FilesystemIterator::SKIP_DOTS);  
$rii = new RecursiveIteratorIterator($rdi);  
  
foreach ($rii as $key => $item) {  
	echo $key, "\n";  
	print_r($item);  
}

$item ist ein SplFileInfo-Objekt, welches eine openFile()-Methode hat, die ein SplFileObject liefert, mit dem man dann die Innereien der Datei untersuchen kann. Da SplFileObject ebenfalls einen Iterator an Bord hat, kannst du statt fgets() sogar mit foreach durch die Zeilen laufen.

dedlfix.