PHP加載opcache擴充後,經常有檔案由于OPcache緩存修改後不生效,寫個腳本手動執行
每個檔案一行,并用分号( ; )分割,例如:
App\Lib\Action\a.php;
App\Lib\Action\b.php;
/> CRM
/> Mobile
if(isset($_POST) && trim($_POST['files'])){
$file_arrs=explode(';',trim($_POST['files'],';')); //擷取要重新整理的檔案數組
$app=trim($_POST['app']);
$root_path="/mnt/data/www/{$app}/"; //項目路徑
//print_r($file_arrs);die;
foreach($file_arrs as $file){
if(trim($file)!=''){
$file=str_replace('\\','/',trim(trim($file),'/')); //替換Linux路徑符号
$file_path=$root_path.$file; //完整檔案路徑
$result=opcache_invalidate($file_path); //重新整理檔案
if($result){
echo $file_path,'檔案重新整理成功
';
}else{
echo $file_path,'檔案重新整理失敗,可能檔案不存在
';
}
}
}
}