博客列表 >PHP上传RAR压缩包并解压到目录,运行DOS命令(*)

PHP上传RAR压缩包并解压到目录,运行DOS命令(*)

福哥的博客
福哥的博客原创
2017年07月25日 15:09:261016浏览

PHP中三个调用系统命令的函数system(), exec(), passthru() 比较:

    system() 输出并返回最后一行shell结果。

    exec() 不输出结果,返回最后一行shell结果

    passthru() 只调用命令,把运行结果原样地输出

    new com()  系统预定义com类,根据需要任意选择内置方法 

    相同点:都可以获得命令执行的状态码


使用PHP 预定义的Com组件加载Shell

$obj=new com("wscript.shell");//加载wscript.shell用来执行dos命令的组件
   $obj->run(“所要执行的命令内容”);//所要执行的命令和返回参数
   //Rar解压命令:  winrar      x      被解压文件     加压的位置

补充知识

获取当前绝对路径: getcwd()  
上传移动文件函数: move_uploaded_file()
<?php

  $dir=getcwd();//获取当前绝对路径


   if($_POST[sub]){

     $tname=$_FILES[upfiles][tmp_name];
     $nname=$_FILES[upfiles][name];

     move_uploaded_file($tname,$nname);
     $obj=new com("wscript.shell");//加载wscript.shell用来执行dos命令的组件

      $obj->run("winrar x $dir\\".$nname." ".$dir , 1,true);//所要执行的命令和返回参数

     unlink($nname);
   }



?>
 <form action="" method="POST" enctype="multipart/form-data">

 选择上传文件 <input type="file" name="upfiles"/>
 <input type="submit" name='sub' value='提交并解压' >

</form>


上一条:百牛百钱下一条:音频
声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议