加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

如何让php脚本自行删除(并包含目录)

发布时间:2020-12-13 18:24:17 所属栏目:PHP教程 来源:网络整理
导读:参见英文答案 PHP file that should run once and delete itself. Is it possible?3个 如何在完成工作后自行删除脚本? 编辑: 这是我的安装脚本,我希望它出于安全原因删除自己(因此攻击者将无法覆盖现有站点). 我忘了提到它有’包含’目录,我也想删除…有人
参见英文答案 > PHP file that should run once and delete itself. Is it possible?3个
如何在完成工作后自行删除脚本?

编辑:

这是我的安装脚本,我希望它出于安全原因删除自己(因此攻击者将无法覆盖现有站点).

我忘了提到它有’包含’目录,我也想删除…有人可以添加如何删除这个目录? includes目录是安装脚本所在的同一文件夹的子目录.

您可以使用 unlink删除文件,使用 __FILE__获取当前文件的完整路径:
unlink(__FILE__);

作为“证据”:

squale@shark:~/developpement/tests/temp
$ll | grep 'remove-myself.php'
-rw-r--r-- 1 squale   squale      25 2009-08-01 17:01 remove-myself.php

=>该文件存在

squale@shark:~/developpement/tests/temp
$cat remove-myself.php
<?php

unlink(__FILE__);

=>它包含我给出的代码

squale@shark:~/developpement/tests/temp
$php ./remove-myself.php

=>我启动了脚本

squale@shark:~/developpement/tests/temp
$ll | grep 'remove-myself.php'

=>它不再存在

为此,您必须确保您具有所需的特权…这意味着尝试删除文件的用户需要在包含它的目录上具有权限访问权限.

当你在命令行,它通常是好的;但是如果你试图通过Apache做到这一点,你将需要给该目录/文件的Apache写访问权限 – 默认情况下,Apache通常不具有这种权限(不安全,通常不需要)

不确定它是否可以在Windows上运行,但是……它可以在Linux上运行,但Windows在执行时可能会“锁定”文件…

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读