php 删除目录

 更新时间:2016年11月25日 15:29  点击:1258

 
/**********************************************************
清除指定目录内的文件
**********************************************************/
function clean_dir($path)        {
        if (!is_dir($path))        {
                if (is_file($path))        {
                        unlink($path);
                }
                return;
        }
        $p=opendir($path);
        while ($f=readdir($p))        {
                if ($f=="." || $f=="..") continue;
                clean_dir($path.$f);
        }
        rmdir($path);
        return;
}
/**********************************************************
删除指定目录下所有文件与子目录
**********************************************************/
function DeltreeDir($dir)  {
$dir = realpath($dir);
        if (!$dir || !@is_dir($dir))
                return 0;
        $handle = @opendir($dir);
        if ($dir[strlen($dir) - 1] != DIRECTORY_SEPARATOR)
                $dir .= DIRECTORY_SEPARATOR;
        while ($file = @readdir($handle))    {
                if ($file != '.' && $file != '..')         {
                        if (@is_dir($dir . $file) && !is_link($dir . $file))
                                DeltreeDir($dir . $file);
                        else
                                @unlink($dir . $file);
                }
        }
        closedir($handle);
        @rmdir($dir);
}
下载下列文件至/usr/local/src/
apache(Unix平台最流行的WEB服务器平台)2.tar.gz
MySQL(和PHP搭配之最佳组合)-5.0.22.tar.gz
php(做为现在的主流开发语言)-5.1.2.tar.gz
解压缩:
#tar xvz(parallels的虚拟行平台)f apache(Unix平台最流行的WEB服务器平台)2.tar.gz
#tar xvz(parallels的虚拟行平台)f MySQL(和PHP搭配之最佳组合)-5.0.22.tar.gz
#tar xvz(parallels的虚拟行平台)f php(做为现在的主流开发语言)-5.1.2.tar.gz
 
#cd ..        //在/usr/local/目录下创建文件夹
# mkdir apache(Unix平台最流行的WEB服务器平台)
# mkdir MySQL(和PHP搭配之最佳组合)
# mkdir php(做为现在的主流开发语言)
 
//MySQL(和PHP搭配之最佳组合)安装过程
#cd ../MySQL(和PHP搭配之最佳组合)               //找到/usr/local/MySQL(和PHP搭配之最佳组合)文件夹
#groupadd MySQL(和PHP搭配之最佳组合)
#usseradd -g MySQL(和PHP搭配之最佳组合) MySQL(和PHP搭配之最佳组合)
 
#cd ../MySQL(和PHP搭配之最佳组合)-5.0.22       //找到/usr/local/src/MySQL(和PHP搭配之最佳组合)-5.0.22文件夹
#./configure --prefix=/usr/local/MySQL(和PHP搭配之最佳组合) --localstatedir=/var/lib/MySQL(和PHP搭配之最佳组合)/ --with-client-ldflags=-all-static --with-MySQL(和PHP搭配之最佳组合)d-ldflags=-all-static --with-MySQL(和PHP搭配之最佳组合)d-user=MySQL(和PHP搭配之最佳组合) --enable-assembler --with-extra-charsets=all
#make ; make install
 
/usr/local/MySQL(和PHP搭配之最佳组合)/bin/MySQL(和PHP搭配之最佳组合)_install_db //初始化MySQL(和PHP搭配之最佳组合)
                     //对MySQL(和PHP搭配之最佳组合)进行配置
#chown –R root /usr/local/MySQL(和PHP搭配之最佳组合)
#chown –R MySQL(和PHP搭配之最佳组合) /var/lib/MySQL(和PHP搭配之最佳组合)/
#chgrp –R MySQL(和PHP搭配之最佳组合) /usr/local/MySQL(和PHP搭配之最佳组合)
#cp support-files/my-medium.cnf /etc/my.cnf
 
/usr/local/MySQL(和PHP搭配之最佳组合)/bin/MySQL(和PHP搭配之最佳组合)d_safe –user=MySQL(和PHP搭配之最佳组合) &         //启动MySQL(和PHP搭配之最佳组合)
 
/usr/local/MySQL(和PHP搭配之最佳组合)/bin/MySQL(和PHP搭配之最佳组合)admin –u root –p password 123     //将密码改为123
enter password:
              
              //测试一下新密码
/usr/local/MySQL(和PHP搭配之最佳组合)/bin/MySQL(和PHP搭配之最佳组合) –u root –p MySQL(和PHP搭配之最佳组合)
enter password:                             //如果顺利的话就能进入MySQL(和PHP搭配之最佳组合)了.
      
                 
//apache(Unix平台最流行的WEB服务器平台)安装过程
./configure --prefix=/usr/local/apache(Unix平台最流行的WEB服务器平台) --enable-mods=shared=all --enable-module=so --disable-info
make
make install
 
apache(Unix平台最流行的WEB服务器平台)安装过程中,遇到libiconv.so.2的问题,解决方法如下:
ln –sf /usr/local/lib/libiconv.so.2 /usr/lib/libiconv.so.2
 
//在窗口栏中敲入本机IP,如果出现着名的羽毛网页,就算成功了….
 
 
 
//php(做为现在的主流开发语言)安装过程
./configure --prefix=/usr/local/php(做为现在的主流开发语言) --with-MySQL(和PHP搭配之最佳组合)=/usr/local/MySQL(和PHP搭配之最佳组合) --with-apxs2=/usr/local/apache(Unix平台最流行的WEB服务器平台)/bin/apxs --enable-calendar --with-openssl=/usr/ --with-config-file-path=/usr/local/php(做为现在的主流开发语言)
make
make install
cp /usr/local/src/php(做为现在的主流开发语言)-5.1.2/php(做为现在的主流开发语言).ini-dist /usr/local/lib/php(做为现在的主流开发语言).ini
 
 
#cd usr/local/apache(Unix平台最流行的WEB服务器平台)/conf
//然后打开httpd.conf在相应的地方进行修改
AddType application/x-httpd-php(做为现在的主流开发语言) .php(做为现在的主流开发语言)
AddType application/x-httpd-php(做为现在的主流开发语言)-source .php(做为现在的主流开发语言)s
 
DocumentRoot "/usr/local/apache(Unix平台最流行的WEB服务器平台)/htdocs"
 
LoadModule php(做为现在的主流开发语言)5_module modules/libphp(做为现在的主流开发语言)5.so
 
//把测试的.php(做为现在的主流开发语言)文件放入/usr/local/apache(Unix平台最流行的WEB服务器平台)/htdocs/,在窗口栏中如能打开页面,则大功告成了
//常见问题1:ERROR 2002: Can't connect to local MySQL(和PHP搭配之最佳组合) server through socket '/var/lib/MySQL(和PHP搭配之最佳组合)/MySQL(和PHP搭配之最佳组合).sock
  ' (2)
//解决方法: 权限问题
chown -R MySQL(和PHP搭配之最佳组合) /var/lib/MySQL(和PHP搭配之最佳组合)/
//常见问题2:Warning: MySQL(和PHP搭配之最佳组合) Connection Failed: Can't connect to local MySQL(和PHP搭配之最佳组合) server
// through socket '/tmp/MySQL(和PHP搭配之最佳组合).sock' (111) in /home/httpd/html/show.php(做为现在的主流开发语言) on line 9
//解决方法: 将/tmp/MySQL(和PHP搭配之最佳组合).sock link 到 /var/lib/MySQL(和PHP搭配之最佳组合) 目录里即可:
linux# ln -s /var/lib/MySQL(和PHP搭配之最佳组合)/MySQL(和PHP搭配之最佳组合).sock /tmp/MySQL(和PHP搭配之最佳组合).sock 在PHP邮件列表中问得最多的问题可能就是:“如何在我的Windows机器上安装PHP?”,那么也许我可以帮助回答这个问题。当你正确安装完成后,你会发现在Windows下开发PHP程序还是不错的。
 
  本教程的目的是向你展示如何用“Apache和Windows”的组合来开发PHP程序。
 
  教程中如未指明具体版本,则PHP为PHP3或PHP4 Beta 2或3,Apache为 1.3.x。
 
一、安装Apache
首先,你须要一个WEB服务器,我推荐Apache。先到htp://www.apache.org/dist看看。在这页上有世界范围的Apache镜像站点列表,找到离你最近的那个。Apache软件一般叫作apache_1_3_x.win32.exe。把它当到你机器里,运行它。它会问你将Apache安装到什么地方,你可以设为c:Apache,因为马上你就要修改它的配置文件。如果安装没出什么错的话,Apache就可以用了。有很多readme文件可供参考,但仅有一个文件是讲Win32平台的,包括Window 9x和Windows NT。
 
二、安装PHP
这个问题在PHP邮件列表中出现的次数太多了。你需要安装最新的Windows版的PHP。你也许会想到你自己去编译PHP3,但我认为对于一般的开发目的,这不需要。PHP也有遍布全世界的镜像站点(中国似乎没有)。选择一个镜像,找到下载区域,选择“Source code and Windows distribution”,下载“Windows Binary”。你只须要将当下来的文件Unzip(WinZip就挺好的)到你喜欢的目录中,如C:PHP4B3.我推荐用版本号作为目录名,这样将来你试用更新版本时,无须删掉老的版本。
 
在Windows 95/97下安装PHP4 Beta,需要有DCOM的支持。如果你的机器上未装, 到这里去下载一份。
 
三、配置PHP
与PHP一起分发的文件包里有一个Readme文件,里面讲述了如何配置。有一个文件名为PHP.INI-dist,它是PHP的主要配置文件。将它拷贝到你的Windows系统目录(Windows 9x的Windows或Windows NT的WinNT目录),并且改名为PHP.INI。需要对此文件作适当的修改,最主要的事情是加入一些可能要用到的模块,象MySQL等。在PHP.INI文件中找到象下面的这一节内容:
;;;;;;;;;;;;;;;;;;;;;;
; Dynamic Extensions ;
;;;;;;;;;;;;;;;;;;;;;;
; if you wish to have an extension loaded automaticly, use the
; following syntax: extension=modulename.extension
; for example, on windows,
; extension=msql.dll ; or under UNIX,
在WIN98下安装PHP4+ PERSONAL ORACLE8I
Personal oracle8i是ORALCE数据库一个成熟的版本,简直就是ORACLE8i的浓缩版。允许程序或其他系统人员在单机上对ORACLE进行开发或学习工作,而不必在企业的数据库上进行,不需要高级的配置环境。对于想学习ORACLE的朋友来说,是一个非常适合的环境。
Personal oracle8i对系统的最第要求是:32MB内存,85MB磁盘空间。
相关下栽:
APACHE1.3.14: www.apache.org
php4.0.3 pl1: www.php.net
Personal Oracle8iR2(8.1.6): www.oracle.com
我的机器配置为MMX166,64MB EDO内存,10GB硬盘。
操作系统是:WIN98SE(OEM)
我试过D版的win98se,可是Personal ORACLE8i的NET8一直不能装上,所以劝大家还是不要用D版的WIN98来安装。
1. 安装personal oracle8i将下载后的ZIP文件进行解压,运行setup,稍等片刻后,即可看到PERSONLAL ORACLE的安装界面,按下一步,输入ORACLE的安装路径和HOME NAME,选择典型安装,这时安装界面的右上角会有一进度条,大概60%左右会弹出警告栏,说内存小于96MB,可能会出错什么的,不必理会,继续,好了,当出现下一个画面的时候,ORACLE8i开始安装了。如果在安装过程中出现有什么错误提示,说什么文件不能写入的话,不必理会,按忽略,这对数据库的安装没有什么影响。数据库安装完成之后,会自动执行net8配置助手,数据库设置助手等工具来设置客户端与数据库,其中会需要输据数据库的全局名称和SID,我们设置为“TEST”,这时要有点耐心,着需要很长的一段时间来完成数据库的设置。最后,当提示oracle成功安装的时候,这才算安装完成了。
2.安装PHP4.0.3pl1:将下载的ZIP文件解压到一目录,如“c:apachephp",将php.ini-ist文件拷贝,并对以下几列进行修改:
指明路径:
doc_root=c:apachehtdocs
extension_dir=c:apachephpextensions
去掉以下两行前面的“;”号:
extension=php_oci8.dll
extension=php_oracle.dll
3.安装APACHE1.3.14:下载后直接运行安装文件,按照提示进行安装即可。
在.confhttp.conf中加入以下几行:
ScriptAlias /php/ "C:/apahce/php/"
Action application/x-httpd-php "/php/php.exe"
AddType application/x-httpd-php .php
AddType application/x-httpd-php .php3
4.测试apahce:在开始菜单中启动APACHE服务,在IE地址栏中输入127.0.0.1,看到APACHE欢迎的画面,说明APACHE工作正常了。
以下文字是由于小弟看到最近论坛上有关此类问题很多而写,还请各位多指教!!!

在本站的常见问题中已经有了怎样去掉PHP4的一些多余信息的解答,但是严格来说这些信息分成两部分:一部分是指明PHP正在运行的消息,就是那些什么X-POWERED-BY之类的;还有一部分是申明了该文件的默认内容形式text/html。常见问题中的解答解决了前一部分问题(只要在相关行加注就OK了),但是论坛上更多的是关于后一部分的问题,我想就这个问题探讨一下。
 
最开始要申明的是这样的情况很可能出现在PHP以CGI方式运行的时候,那么小弟猜想大部分是WIN32平台出错。
 
首先,一个最极端的解决方法就是,将所有扩展模块注释掉,即在php.ini中将那些关于数据库、图形、MAIL等等扩展模块均申明不加载,部分php.ini文件类似如下的形式:
;Windows Extensions
;extension=php_mysql.dll
;extension=php_nsmail.dll
;extension=php_calendar.dll
;extension=php_dbase.dll
;extension=php_filepro.dll
;extension=php_gd.dll
;extension=php_dbm.dll
;extension=php_mssql.dll
;extension=php_zlib.dll
;extension=php_filepro.dll
;extension=php_imap4r2.dll
;extension=php_ldap.dll
;extension=php_crypt.dll
;extension=php_msql2.dll
;extension=php_odbc.dll
那么如果需要这些模块怎么办?小弟我的解决办法只有在相应页面动态加载,即dl()上去——以前小弟我还寻思这个函数有什么用,现在,哈哈。。。如果各位有什么好办法,也可以张贴出来和大家分享!
其次一个解决的办法是利用PHP的-q参数,按照PHP自己的说法是“Suppress HTTP Header Output”即禁止HTTP头输出。这样倒是一了百了,但是你的任何header()和setcookie()都无用了——嘿嘿,你的PHP就基本报废。所以那,这只是一个龌鹾的办法了。
 
好了,就说这么多,应该可以解决CGI方式运行的PHP的以上问题了。以上资料综合了www.faqts.com的有关PHP部分——那个地方可以顶级的提问地盘了,经常有PHP/ZEND的撰写者和一些PHP书籍的作者回答你的问题,多棒阿!!!


[!--infotagslink--]

相关文章

  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • 解决Pycharm的项目目录突然消失的问题

    今天小编就为大家分享一篇解决Pycharm的项目目录突然消失的问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-04-22
  • 删除条目时弹出的确认对话框

    复制代码 代码如下: <td> <a href="/member/life/edit_ppt/<?php echo $v->id;?>" class="btn">编辑</a> <a href="javascript:;" onclick="if(confirm('您确定删除这条记录?')){location.href='/member/life/d...2014-06-07
  • C#路径,文件,目录及IO常见操作汇总

    这篇文章主要介绍了C#路径,文件,目录及IO常见操作,较为详细的分析并汇总了C#关于路径,文件,目录及IO常见操作,具有一定参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • jQuery动态添加与删除tr行实例代码

    最近由于项目的需要,需要动态的添加和删除table中的tr,感觉用JS可以实现,但是在网上找了一下,单纯的自己写JS,感觉太麻烦,而且也不好维护。于是想到了最近学的jQuery。这篇文章给大家用实例介绍了jQuery动态添加与删除tr行的方法,有需要的朋友们可以参考借鉴。...2016-10-20
  • php跨网站请求伪造与防止伪造方法

    伪造跨站请求介绍伪造跨站请求比较难以防范,而且危害巨大,攻击者可以通过这种方式恶作剧,发spam信息,删除数据等等。...2013-10-01
  • Centos中彻底删除Mysql(rpm、yum安装的情况)

    我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15
  • MyBatis-Plus的物理删除和逻辑删除(使用场景)

    数据库中的数据删除会分为两种:物理删除 和 逻辑删除,接下来通过本文给大家介绍MyBatis-Plus的物理删除和逻辑删除使用场景分析,感兴趣的朋友一起看看吧...2021-09-25
  • docker 启动elasticsearch镜像,挂载目录后报错的解决

    这篇文章主要介绍了docker 启动 elasticsearch镜像,挂载目录后报错的解决,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-11-20
  • idea out目录与target目录的区别详解

    这篇文章主要介绍了idea out目录与target目录的区别详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-02-08
  • C#获得程序的根目录以及判断文件是否存在的实例讲解

    今天小编大家分享一篇C#获得程序的根目录以及判断文件是否存在的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2020-06-25
  • js实现上传文件添加和删除文件选择框

    这篇文章主要为大家详细介绍了js实现上传文件添加和删除文件选择框 ,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-25
  • mybatis-plus getOne和逻辑删除问题详解

    这篇文章主要介绍了mybatis-plus getOne和逻辑删除,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-08-26
  • 利用Node.js获取项目根目录的小技巧

    这篇文章介绍的是一个小技巧来获取node.js项目根目录,这个技巧非常实用。有需要的朋友们可以参考借鉴,下面来一起看看吧。...2016-10-02
  • PHP递归创建多级目录

    我的第一个感觉就是用递归创建,具体思路如下: function Directory($dir){    if(is_dir($dir) || @mkdir($dir,0777)){ //查看目录是否已经存在或尝试创建,加一个@抑制符号是因为第一次创建失败,会报一个“父目录不存...2015-11-08
  • C# 复制与删除文件的实现方法

    这篇文章主要介绍了C# 复制与删除文件的实现方法的相关资料,希望通过本文能帮助到大家,让大家理解掌握这部分内容,需要的朋友可以参考下...2020-06-25
  • C#删除UL LI中指定标签里文字的方法

    这篇文章主要介绍了C#删除UL LI中指定标签里文字的方法,涉及C#针对页面HTML元素进行正则匹配与替换的相关操作技巧,需要的朋友可以参考下...2020-06-25
  • 解决docker挂载的目录无法读写问题

    这篇文章主要介绍了解决docker挂载的目录无法读写问题,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-03-19
  • python import 上级目录的导入

    这篇文章主要介绍了python import 上级目录的导入,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-11-03
  • MybatisPlus实现逻辑删除功能

    这篇文章主要介绍了MybatisPlus实现逻辑删除功能,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-12-25