Zend - The PHP Company




Text

Add Code


Global Search And Replace  

Type: code fragment
Added by: RLYNCH
Entered: 02/02/2000
Last modified: 08/12/1999
Rating: *** (3 votes)
Views: 8944
Globally Searches and Replaces text in files throughout a directory.


<?php
    exec
("/bin/grep -r '$oldword$rootpath"$results$errorCode);
    if (
$errorCode){
        if (
$errorCode == 1){
            echo 
"Possibly no files were found with $oldword in them<BR>n";
        }
      echo 
"OS Error: $errorCode<BR>n";
      echo 
"Check 'man errno' and count down<BR>n";
      echo 
"Usually paths/permissions<BR>n";
    }
    while (list(,
$path) = each($results)){
        
$parts explode(':'$path);
        
$path $parts[0];
      
$fp fopen($path'r') or print("Cannot read $path<BR>n");
      if (
$fp){
        
$data fread($fpfilesize($path));
        
fclose($fp);
        
$newdata str_replace($oldword$newword$data);
        
$fp fopen($path'w') or print("Cannot write $path<BR>n");
        if (
$fp){
          
fwrite($fp$newdata);
          
fclose($fp);
          echo 
$path"<BR>n";
        }
      }
    }
?>


Usage Example


http://yourserver.com/globalreplace.php?oldword=test&newword=text&rootpath=/path/to/dir


Rate This Script





Search



This Category All Categories