Einführung
Einführung -- HowTo für das Suchen&Ersetzen in Dateien
Benutzung
Mit File_SearchReplace können
Sie einen Text durch einen anderen in beliebig vielen Dateien ersetzen.
Beispiel 44-1. Typische Anwendung
<?php
include 'File/SearchReplace.php' ;
$files = array( "test1.txt",
"test2.txt",
"test3.txt" ) ;
$ignoreline = array( "#", ":") ;
$snr = new File_SearchReplace( "Yes", "No", $files, "/mail/", false,
$ignoreline) ;
$snr -> doSearch() ;
?>
|
|
Im Beispiel werden alle Auftreten von Yes durch
No ersetzt in den Dateien $files
im Verzeichnis /mail/. Wenn eine
Zeile in einer Datei beginnt mit einem der Zeichen in
$ignoreline, dann werden mögliche Treffer darin ignoriert.
Sie können eine neue Suche durchführen, ohne ein neues Objekt der
Klasse zu erzeugen.
Beispiel 44-2. Eine neue Suche durchführen
<?php
...
// string to search
$snr -> setFind( "Er") ;
// string to find
$snr -> setReplace( "Sie") ;
// look in this files
$snr -> setFiles( $files) ;
// look in this directories
$snr -> setDirectories( array( "/neue_briefe/")) ;
// look in the subdirectories too
$snr -> setIncludeSubdir( true) ;
// ignore lines in the files starting with this chars
$snr -> setIgnoreLines( array( "::", "#")) ;
// restart search'n'replace
$snr -> doSearch() ;
?>
|
|
Typen von Suchfunktionen
File_SearchReplace unterstützt verschiedene
Suchtypen. Der Typ hat Einfluß auf das Format des erforderlichen
$find-Parameters.
normal - Standard, der einzige Typ, der den
$IgnoreLines-Parameter beachtet.
quick - benutzt die PHP-Funktion str_replace().
preg - benutzt die PHP-Funktion preg_replace().
ereg - benutzt die PHP-Funktion ereg_replace()
Um den Typ zu setzen, rufen Sie die Methode
setSearchFunction() vor der Methode
doSearch() auf.