如何能够利用PHP语言来进行空间中的文件管理,为我们带来良好的空间布局呢?今天我们就为大家介绍一种简便的PHP文件管理的实现方法。

众所周知,用FTP上传,复制,删除大量文件是相当慢的,传个wordpress就要半个小时以上,删掉它也要半小时。。。而用简单的php代码上传再打开网页,3秒不到即可搞定上述过程,实在很爽(尤其对于偶这种手机玩网站的…)

注:将文中代码复制保存为xxx.php文件上传到空间打开即可(需要修改的对应修改下)

PHP文件管理1.上传和解压代码

  1. < ?php
  2. exec("fetch http://cn.wordpress
    .org/wordpress-2.8-zh_CN.zip");
  3. exec("tar xvfz wordpress-2.8-
    zh_CN.zip");
  4. ?>

这个就是wordpress的上传解压代码,也可以单独用以下代码来解压文件(同样地也可以获取网络文件)

  1. < ?php
  2. exec("tar xvfz wordpress
    -2.8-zh_CN.zip");
  3. ?>

PHP文件管理2.复制代码

通常上面的解压会解压到一个新文件夹,而如果想复制到根目录的话,就可以用以下代码了(移动文件的也有,不过为作备份就不介绍了)(这里以神龙空间为例,路径需要自己改)

  1. < ?
  2. exec("cp -Rf /usr/virtual/leo2351960
    /flysh.co.tv/public_html/wordpress/
     /usr/virtual/leo2351960/flysh.co.
    tv/public_html/");
  3. ?>

上面这个就是把wp文件夹复制到根目录的代码,有两个路径,前面的是需要移动的文件(夹),后面是目标路径,路径须为绝对路径

PHP文件管理3.删除文件(夹)

  1. < ?
  2. exec("rm -r /usr/virtual/
    leo2351960/flysh.co.tv/
    public_html/wordpress");
  3. ?>

注意,谨慎删除,此动作太快,后悔来不及(上次不小心删了个文件夹搞得重装一遍)

PHP文件管理4.修改文件(夹)权限

  1. < ?php
  2. exec("chmod -R 777 /v /usr/virtual
    /leo2351960/flysh.co.tv/public_html/xxx.php");
  3. exec("chmod -R 777 /v /usr/virtual
    /leo2351960/flysh.co.tv/public_html/up");
  4. ?>

对应修改下即可完成大量文件文件夹的权限修改,方便!

PHP文件管理5.批量删除相同前缀数据库表

这个是free8的007兄弟找到的(他找到了还pm我,真是好人啊~),顺便贴上

  1. < ?php
  2. function deldata($dbname,$tableflag){
  3. $db_host = 'localhost';
  4. $db_port = '3306';
  5. $db_user = 'username';
  6. $db_pass = 'password';
  7. $connect =mysql_connect($db_host,
    $db_user,$db_pass);
  8. mysql_select_db($dbname);
  9. $result = mysql_query("show table 
    status from $dbname",$connect);
  10. $data=mysql_fetch_array($result);
  11. while($data=mysql_fetch_array($result)) {
  12. $table=mysubstr($data[Name],"_");
  13. if($table==$tableflag){
  14. //测试之用
  15. /*echo $data[Name];
  16. echo "< br>";
  17. echo $table;
  18. echo "< br>";*/
  19. mysql_query("drop table $data[Name]");
  20. }
  21. }
  22. return true;
  23. }
  24. /*截取某个特定字符前的所有字符函数
  25. *$str 为待截取字符串
  26. *$flag 特定字符如“_”
  27. */
  28. function mysubstr($str,$flag){
  29. $pos=strpos($str,$flag);
  30. return substr($str,0,$pos);
  31. }
  32. ?>
  1. < ?php //test
  2. $dbname="database";
  3. //数据库名
  4. $tableflag="wp";
  5. //要删除的表的前缀,有这个前缀的表才删除
    ,标志出是哪一个用户
  6. deldata($dbname,$tableflag);
  7. //$test=mysubstr("cdb_account_log","_");
  8. //echo $test;
  9. ?>

注意修改上面的username和password还有底下的database和表前缀

OK了,以上就是PHP文件管理一些实用的代码,还有很多大家自己找了,偶最喜欢快捷方便的玩意儿~

简单实现php文件管理的更多相关文章

  1. PHP基础示例:简单的在线文件管理

    先截个图: 下面为代码部分,由于只有一个文件,所以就不折叠了. <?php //简单的在线文件管理 $path = "./"; $filelist=array("f ...

  2. 免费的在线Web文件管理器:Net2FTP,Pydio,eXtplorer,KodExplorer–功能强大

    https://www.freehao123.com/web-ftp/ 经常有朋友在使用一些没有带文件管理器的空间时,苦于没有办法来解压上传的文件压缩包,而如果不先上传压缩包,直接上传文件夹的话耗费的 ...

  3. mount不是很熟悉 转载文章了解下 转自http://forum.ubuntu.org.cn/viewtopic.php?f=120&t=257333

    纯粹针对刚刚解封开包的新新手,老鸟们请自觉绕行,否则浪费你的时间你非要逼我做谋杀犯可不光我的事你还没地方说理去.如果你正好是个崭新的新手,就耐心的花点时间看看吧,至少大概看看,不要在一个陌生又黑暗的到 ...

  4. iOS 资源大全

    这是个精心编排的列表,它包含了优秀的 iOS 框架.库.教程.XCode 插件.组件等等. 这个列表分为以下几个部分:框架( Frameworks ).组件( Components ).测试( Tes ...

  5. web前端本地测试方法

    在大型项目中的前端测试与开发,通常使用git clone将整个工程目录下载下来,然后本地运行调试. 然而,当一个项目已经发布到测试机上,需要临时查看某个页面的效果或修改某个页面时,clone整个工程目 ...

  6. IOS中文版资源库

    Swift 语言写成的项目会被标记为  ★ ,AppleWatch 的项目则会被标记为 ▲. [转自]https://github.com/jobbole/awesome-ios-cn#librari ...

  7. Object C学习笔记25-文件管理(一)

    在此篇文章中简单记录一下文件管理,在Object C中NSFileManager用于管理文件已经路径.在Object C中的文件路径可以是相对路径也可以是绝对路径.斜线“/”开头,斜线实际上就是一个目 ...

  8. linux 挂载(转载)

    From:http://forum.ubuntu.org.cn/viewtopic.php?t=257333 用linux,就一定要用linux的方式去思维.嗯,说的容易做起来难.我的D盘哪去了?恐怕 ...

  9. 墙裂推荐 iOS 资源大全

    这是个精心编排的列表,它包含了优秀的 iOS 框架.库.教程.XCode 插件.组件等等. 这个列表分为以下几个部分:框架( Frameworks ).组件( Components ).测试( Tes ...

随机推荐

  1. Android自己定义ViewGroup打造各种风格的SlidingMenu

    看鸿洋大大的QQ5.0側滑菜单的视频课程,对于側滑的时的动画效果的实现有了新的认识,似乎打通了任督二脉.眼下能够实现随意效果的側滑菜单了.感谢鸿洋大大!! 鸿洋大大用的是HorizontalScrol ...

  2. PS 如何用PS制作GIF图像

    首先我们准备好要依次播放的图片(这里使用的是CS的光标缩放,只有两张图) 然后在窗口中打开动画,则下方会出现动画的面板. 点击图层按钮可以添加一帧,我们让第一帧显示为大图片,第二帧为小图片.还可以设置 ...

  3. Jstl indexOf 参考

    <%@ taglib uri="http://java.sun.com/jsp/jstl/functions" prefix="fn" %> < ...

  4. 关于C++ 命名空间Namespace 的解析

    使用命名空间的目的是对标识符的名称进行本地化,以避免命名冲突.在C++中,变量.函数和类都是大量存在的.如果没有命名空间,这些变量.函数.类的名称将都存在于全局命名空间中,会导致很多冲突.比如,如果我 ...

  5. spoj 1811 LCS - Longest Common Substring (后缀自己主动机)

    spoj 1811 LCS - Longest Common Substring 题意: 给出两个串S, T, 求最长公共子串. 限制: |S|, |T| <= 1e5 思路: dp O(n^2 ...

  6. mac os PHP 访问MSSQL

    写在前: 项目的数据库是sql server,但是自己的系统是mac os.这样导致了需要一个烦人的系统环境搭建过程.目前要在mac 上的php环境中支持mssql环境访问,经过自己了解,有两种方式: ...

  7. openCV2马拉松第18圈——坐标变换

    计算机视觉讨论群162501053 转载请注明:http://blog.csdn.net/abcd1992719g 收入囊中 仿射变换 坐标映射 利用坐标映射做一些效果,例如以下 watermark/ ...

  8. C++风格的强制性类型转换

    显示类型转换 被称为强制类型转换(cast) C风格:(type_id) C++风格:static_cast, dynamic_cast, reinterpret_cast, const_cast 在 ...

  9. 常见Struts、Hibernate、Spring、J2EE、ibatis、Oracle等开发框架架构图及其简介

    各种系统架构图及其简介 转载请保留出处,不胜人生一场醉汇总. 以下文字和架构图均在本人相关系统设计和架构方案中有所应用. 原文出处:http://space.itpub.net/6517/viewsp ...

  10. error MSB8011: 未能注冊输出。请尝试启用“逐用户重定向”

    初试MFC就遇到困难了.vs2010创建一个MFC ActiveX控件项目. 什么都还没做呢,就出现故障了? 郁闷呀.! ! 1>C:\Program Files\MSBuild\Microso ...