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

yipeiwu_com7年前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"; 



?> 

相关文章

探讨php define()函数及defined()函数使用详解

The define() function defines a constant.define()函数的作用是:定义一个常量。 Constants are much like varia...

PHP 循环删除无限分类子节点的实现代码

复制代码 代码如下:<?php    private  function _deleteSubNode($ids){   ...

详细解读PHP中接口的应用

接口 PHP类是单继承,也就是不支持多继承,当一个类需要多个类的功能时,继承就无能为力了,为此PHP引入了接口技术 如果一个抽象类里面的所有方法都是抽象方法,且没有声明变量,而且接口里面...

ThinkPHP使用心得分享-上传类UploadFile的使用

上传类的使用很简单,如果是第一次使用上传功能的朋友需要注意的是html提交表单中的表单属性要加上 enctype属性,如: 复制代码 代码如下: <form method...

PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解

PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)实例详解

本文实例讲述了PHP实现二叉树深度优先遍历(前序、中序、后序)和广度优先遍历(层次)。分享给大家供大家参考,具体如下: 前言: 深度优先遍历:对每一个可能的分支路径深入到不能再深入为止,...