In diesem Artikel wird hauptsächlich die One-Click-Cache-Löschmethode in ThinkPHP vorgestellt.
Viele Open-Source-CMS-Systeme verfügen über die Funktion, den Cache mit einem Klick zu leeren Reduzieren Sie den erzeugten Druck, aber das Vorhandensein eines Caches kann auch dazu führen, dass einige Daten nicht in Echtzeit aktualisiert werden. In diesem Zusammenhang werden wir eine ThinkPHP-Cache-Löschfunktion implementieren. Der Code lautet wie folgt:
ThinkPHP-Hintergrundausführungscode:
//获取要清楚的目录和目录所在的绝对路径 public function cache(){ ////前台用ajax get方式进行提交的,这里是先判断一下 if($_POST['type']){ //得到传递过来的值 $type=$_POST['type']; //将传递过来的值进行切割,我是用“-”进行切割的 $name=explode('-', $type); //得到切割的条数,便于下面循环 $count=count($name); //循环调用上面的方法 for ($i=0;$i<$count;$i++){ //得到文件的绝对路径 $abs_dir=dirname(dirname(dirname(dirname(__FILE__)))); //组合路径 $pa=$abs_dir.'indexRuntime'; $runtime=$abs_dir.'indexRuntime~runtime.php'; if(file_exists($runtime))//判断 文件是否存在 { unlink($runtime);//进行文件删除 } //调用删除文件夹下所有文件的方法 $this->rmFile($pa,$name[$i]); } //给出提示信息 $this->ajaxReturn(1,'清除成功',1); }else{ $this->display(); } } public function rmFile($path,$fileName){//删除执行的方法 //去除空格 $path = preg_replace('/(/){2,}|{}{1,}/','/',$path); //得到完整目录 $path.= $fileName; //判断此文件是否为一个文件目录 if(is_dir($path)){ //打开文件 if ($dh = opendir($path)){ //遍历文件目录名称 while (($file = readdir($dh)) != false){ //逐一进行删除 unlink($path.''.$file); } //关闭文件 closedir($dh); } } }
Der Front-End-Seitencode lautet wie folgt:
<script type="text/javascript" src="__PUBLIC__/admin/js/jquery.js"></script> <script type="test/javascript"> $(function(){ $('#button').click(function(){ if(confirm("确认要清除缓存?")){ var $type=$('#type').val(); var $mess=$('#mess'); $.post('__URL__/clear',{type:$type},function(data){ alert("缓存清理成功"); }); }else{ return false; } }); }); </script>
Verwandte Empfehlungen:
ThinkPHP implementiert modulübergreifende Aufrufe
ThinkPHP implementiert detailliertes Beispiel für die Aktualisierung von Daten (Demo)
Das obige ist der detaillierte Inhalt vonThinkPHP implementiert die Ein-Klick-Cache-Löschmethode. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!