php中判断文件空目录是否有读写权限
发布:smiling 来源: PHP粉丝网 添加日期:2014-01-16 10:48:40 浏览: 评论:0
is_writable用来处理,记住 PHP 也许只能以运行 webserver 的用户名(通常为 \'nobody\')来访问文件,不计入安全模式的限制。
is_writable() 例子,代码如下:
- <?php
- $filename = 'test.txt';
- if (is_writable($filename)) {
- echo 'The file is writable';
- } else {
- echo 'The file is not writable';
- }
- ?>
上面的函数有一个问题就是filename 必需,规定要检查的文件,必须是文件啊,目录不可判断,下面我们来判断空目录。
实例1,该功能非常常用,特别在一些需要生成静态文件的项目中,一个目录是否可以,关乎到是否对该目录有创建文件删除文件的权限.
问题出现:如何检查一个目录是否可写,如何目录下还有目录和文件,那么都要检查
思路:(1)首先先写出检查空目录是否可写的算法,在该目录中生成一个文件,如果不能生成,表明该目录没有写的权限(2)使用递归的办法来进行检查,代码如下:
- set_time_limit(1000);
- function check_dir_iswritable($dir_path){
- $dir_path=str_replace('\','/',$dir_path);
- $is_writale=1;
- if(!is_dir($dir_path)){
- $is_writale=0;
- return $is_writale;
- }else{
- $file_hd=@fopen($dir_path.'/test.txt','w');
- if(!$file_hd){
- @fclose($file_hd);
- @unlink($dir_path.'/test.txt');
- $is_writale=0;
- return $is_writale;
- }
- $dir_hd=opendir($dir_path);
- while(false!==($file=readdir($dir_hd))){
- if ($file != "." && $file != "..") {
- if(is_file($dir_path.'/'.$file)){
- //文件不可写,直接返回
- if(!is_writable($dir_path.'/'.$file)){
- return 0;
- }
- }else{
- $file_hd2=@fopen($dir_path.'/'.$file.'/test.txt','w');
- if(!$file_hd2){
- @fclose($file_hd2);
- @unlink($dir_path.'/'.$file.'/test.txt');
- $is_writale=0;
- return $is_writale;
- }
- //递归
- $is_writale=check_dir_iswritable($dir_path.'/'.$file);
- }
- }
- }
- }
- return $is_writale;
- }
上面实例主要是fopen去在目录创建文件或在文件中写内容,这样就可以判断目录的读写权限了。
Tags: 判断 文件 空目录 读写权限
- 上一篇:php中获取文件后缀名多种方法
- 下一篇:php文件删除unlink()详解
相关文章
- ·php判断文件是否存在file_exists 与 is_file详解(2013-11-29)
- ·php判断文件是否存在(2013-12-16)
- ·php is_file 判断文件存在(2014-01-15)
- ·PHP判断文件是否被修改实例(2014-07-13)
- ·PHP判断远程/网络文件是否存在实例总结(2014-07-17)
- ·PHP判断远程文件是否存在(2014-07-27)
- ·php提前判断远程文件是否可用(2014-09-05)
- ·php判断文件存在是用file_exists 还是 is_file(2014-09-14)
- ·php 判断文件或目录是否存在(2014-09-20)
- ·PHP判断网络文件是否存在的方法(2021-05-16)
- ·PHP判断json格式是否正确的实现代码(2021-08-07)
- ·php判断目录存在的简单方法(2021-12-22)
- ·php 读取目录所有文件信息dir()(2013-11-12)
- ·php获取当前文件所有执行的函数和类(2013-11-12)
- ·php检查文件是否可读和可写(2013-11-14)
- ·PHP文件操作方法问答 (2013-11-14)
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)