ディレクトリ内のすべてのhtmlファイルで会社の住所の一部を更新しようとしています。新しい行をファイルに挿入し直す最善の方法を見つけようとして立ち往生しました。以下は私がこれまでに得たものです。
<?php
$dir = new DirectoryIterator(dirname(__FILE__));
foreach ($dir as $fileinfo){
foreach(glob($fileinfo.'/*.*') as $file) {
if(is_writable($file)){
$file_parts = pathinfo($file);
switch($file_parts['extension'])
{
case "html":
$lines = file($file);
foreach ($lines as $line_num => $line) {
$newline = str_replace("Suite 425", "Suite 800", $line);
echo $newline;
}
break;
}
}
}
}
?>
このように試してみてください。ただし、テストされていないか、すべてのファイルを試す前にテストするか、安全なバックアップを保持してください:)
<?php
$dir = new DirectoryIterator(dirname(__FILE__));
foreach ($dir as $fileinfo){
foreach(glob($fileinfo.'/*.*') as $file) {
if(is_writable($file)){
$file_parts = pathinfo($file);
switch($file_parts['extension'])
{
case "html":
$lines = file($file);
$to_write='';
$file_modified=false;
foreach ($lines as $line_num => $line) {
$newline = str_replace("Suite 425", "Suite 800", $line);
$to_write.=$newline;
if($newline!=$line){
$file_modified=true;
}
}
if($file_modified){
$file_handle=fopen($file, 'w');
fwrite($file_handle, $to_write);
fclose($file_handle);
}
break;
}
}
}
}
?>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加