欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

教你简单实现PHP文件管理

程序员文章站 2022-05-09 16:57:16
...
如何能够利用

众所周知,用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文件管理一些实用的代码,还有很多大家自己找了,偶最喜欢快捷方便的玩意儿~