php 全文搜索和替换的实现代码

yipeiwu_com6年前PHP代码库
<?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"; 



?> 

相关文章

详解WordPress开发中用于获取分类及子页面的函数用法

get_category get_category 可能我们平时接触的不多,但却是很有用,网上这个函数介绍的貌似不多,所以今天只针对官方 WordPress 英文文档做一下翻译。 函数描...

php查询whois信息的方法

本文实例讲述了php查询whois信息的方法。分享给大家供大家参考。具体如下: 这里使用php通过查询whois信息的网站列表进行查询 function whois_query($d...

php中autoload的用法总结

PHP中提供了Autoload来帮助我们方便的进行文件的包含,但是autoload并非想象的那样能够处理所有的情况,今天就来记录一下前几天遇到的autoload存在的一些问题。 为什么要...

php 字符过滤类,用于过滤各类用户输入的数据

详细代码如下: 复制代码 代码如下:<?php abstract class Filter { //filter parent class private $blackstr =...

PHP多线程编程之管道通信实例分析

本文实例讲述了PHP多线程编程之管道通信用法。分享给大家供大家参考。具体分析如下: 一个线程如果是个人英雄主义,那么多线程就是集体主义,你不再是一个独行侠,而是一个指挥家。 管道通信:...