我有两百万个文本文件储存在一个可以被互联网用户访问的服务器上。我被要求尽快对这些文件进行内容更改(字符串替换操作)。我考虑在服务器上对每个文本文件进行str_replace
处理。但是,我不想占用服务器资源,导致无法被互联网用户访问。
你认为以下方案是否可行?
<?php
ini_set('max_execution_time', 1000);
$path=realpath('/dir/');
$objects = new RecursiveIteratorIterator(new RecursiveDirectoryIterator($path), RecursiveIteratorIterator::SELF_FIRST);
foreach($objects as $name => $object){
set_time_limit(100);
//do str_replace stuff on the file
}
find
和sed
命令的工作。请参考此链接以获取相关信息:http://superuser.com/search?q=replace+multiple+files+sed ,也可以参考以下内容:http://superuser.com/questions/146389/how-to-replace-every-text-in-a-mac-folder/146392#146392 。 - Michael Berkowski