【发布时间】:2014-11-07 19:07:04
【问题描述】:
我正在尝试在 PHP 中创建一个函数,该函数可以从一个文件夹及其所有子文件夹中的所有 .js 文件中删除两个标签中的代码。到目前为止,除了preg_replace(),一切正常。这是我的代码:
<?php
deleteRealtimeTester('test');
function deleteRealtimeTester($folder_path)
{
foreach (glob($folder_path . '/*.js') as $file)
{
$string = file_get_contents($file);
$string = preg_replace('#//RealtimeTesterStart(.*?)//RealtimeTesterEnd#', 'test2', $string);
$file_open = fopen($file, 'wb');
fwrite($file_open, $string);
fclose($file_open);
}
$subfolders = array_filter(glob($folder_path . '/*'), 'is_dir');
if (sizeof($subfolders) > 0)
{
for ($i = 0; $i < sizeof($subfolders); $i++)
{
echo $subfolders[$i];
deleteRealtimeTester($subfolders[$i]);
}
}
else
{
return;
}
}
?>
如前所述,我想删除这些标签中的所有内容以及标签本身:
//RealtimeTesterStart
//RealtimeTesterEnd
标签包含正斜杠很重要,而且如果文件包含多个这些标签,则仅删除从 //RealtimeTesterStart 到 //RealtimeTesterEnd 的代码,而不是从 //RealtimeTesterEnd 到 //RealtimeTesterStart 的代码。
我希望有人可以帮助我。
【问题讨论】:
标签: php tags preg-replace