全文搜索和替换

PHPING 2016-10-29

<?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($fp, filesize($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";  

}  

}  

}  

?>  

Example  

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

相关推荐

PHP100 / 0评论 2019-03-27