全文搜索和替换


Posted in PHP onOctober 09, 2006

<?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  

PHP 相关文章推荐
发挥语言的威力--融合PHP与ASP
Oct 09 PHP
我的论坛源代码(九)
Oct 09 PHP
PHP-MySQL教程归纳总结
Jun 07 PHP
php5 pdo新改动加载注意事项
Sep 11 PHP
Drupal7中常用的数据库操作实例
Mar 02 PHP
用PHP来计算某个目录大小的方法
Apr 01 PHP
PHP捕获Fatal error错误的方法
Jun 11 PHP
php实现简单的MVC框架实例
Sep 23 PHP
php中str_pad()函数用法分析
Mar 28 PHP
thinkPHP显示不出验证码的原因与解决方法分析
May 20 PHP
使用PHPUnit进行单元测试并生成代码覆盖率报告的方法
Mar 08 PHP
解决php写入数据库乱码的问题
Sep 17 PHP
转换中文日期的PHP程序
Oct 09 #PHP
PHP网上调查系统
Oct 09 #PHP
PHP的ASP防火墙
Oct 09 #PHP
一个高ai的分页函数和一个url函数
Oct 09 #PHP
Email+URL的判断和自动转换函数
Oct 09 #PHP
WIN98下Apache1.3.14+PHP4.0.4的安装
Oct 09 #PHP
用文本文件制作留言板提示(下)
Oct 09 #PHP
You might like
摩卡咖啡
2021/03/03 咖啡文化
用PHP+java实现自动新闻滚动窗口
2006/10/09 PHP
php将fileterms函数返回的结果变成可读的形式
2011/04/21 PHP
php5.3中连接sqlserver2000的两种方法(com与ODBC)
2012/12/29 PHP
解析link_mysql的php版
2013/06/30 PHP
深入解析PHP中逗号与点号的区别
2013/08/05 PHP
PHP常用函数和常见疑难问题解答
2014/03/05 PHP
PHP解耦的三重境界(浅谈服务容器)
2017/03/13 PHP
JS下高效拼装字符串的几种方法比较与测试代码
2010/04/15 Javascript
jQuery maxlength文本字数限制插件
2010/04/16 Javascript
JQuery中each()的使用方法说明
2010/08/19 Javascript
jQuery图片的展开和收缩实现代码
2013/04/16 Javascript
深入理解Javascript作用域与变量提升
2013/12/09 Javascript
js对table的td进行相同内容合并示例详解
2013/12/27 Javascript
JS(JQuery)操作Array的相关方法介绍
2014/02/11 Javascript
详解vue之页面缓存问题(基于2.0)
2017/01/10 Javascript
搭建简单的nodejs http服务器详解
2017/03/09 NodeJs
vue 监听屏幕高度的实例
2018/09/05 Javascript
vue请求本地自己编写的json文件的方法
2019/04/25 Javascript
vue使用swiper实现中间大两边小的轮播图效果
2019/11/24 Javascript
微信小程序实用代码段(收藏版)
2019/12/17 Javascript
JavaScript中reduce()的5个基本用法示例
2020/07/19 Javascript
[00:44]TI7不朽珍藏III——军团指挥官不朽展示
2017/07/15 DOTA
Python 除法小技巧
2008/09/06 Python
Python根据欧拉角求旋转矩阵的实例
2019/01/28 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
基于python和flask实现http接口过程解析
2020/06/15 Python
25个CSS3动画按钮和菜单教程分享
2012/10/03 HTML / CSS
专注澳大利亚特产和新西兰特产的澳洲中文网:0061澳洲制造
2019/03/24 全球购物
几道数据库的概念性面试题
2014/05/30 面试题
J2EE模式面试题
2016/10/11 面试题
国际商务专业职业生涯规划书范文
2014/01/17 职场文书
毕业自我鉴定书
2014/03/24 职场文书
公司晚会策划方案
2014/05/17 职场文书
大学应届毕业生求职信
2014/05/24 职场文书
react antd实现动态增减表单
2021/06/03 Javascript