浅析is_writable的php实现

yipeiwu_com7年前PHP代码库
以下函数可用于替换php内置的is_writable函数
复制代码 代码如下:

//可用于替换php内置的is_writable函数
function isWritable($filename){
    if(preg_match('/\/$/',$filename)){
        $tmp_file=sprintf('%s%s.tmp',$filename,uniqid(mt_rand()));
        return isWritable($tmp_file);
    }
    if(file_exists($filename)){
        //文件已经存在的话,使用读写方式打开
        $fp=@fopen($filename,'r+');
        if($fp){
            fclose($fp);
            return true;
        }
        else{
            return false;
        }
    }
    else{
        $fp=@fopen($filename,'w');
        if($fp){
            fclose($fp);
            unlink($filename);
            return true;
        }
        else{
            return false;
        }
    }
}

相关文章

header跳转和include包含问题详解

注册程序统一走单一入口,核心判断是checkip处,只需要在未实名认证的模板程序处做一个game_id的判断即可。因为太过肯定、急于下班的心理,再加上大家催促的紧张,一下子就蒙了,犯了两...

PHP CodeIgniter框架的工作原理研究

PHP CodeIgniter框架的工作原理研究

CodeIgniter(以下简称CI,官网以及中国站)是一个流行的PHP框架,小巧但功能强大,简洁轻量同时拥有很好的扩展性,在国内也比较受欢迎。另一方面,CI却没有与时俱进,并不支持PH...

详解PHP匿名函数与注意事项

php5.3不但引进了匿名函数还有更多更好多新的特性了,下面我们一起来了解一下PHP匿名函数与注意事项,具体内容如下 PHP5.2 以前:autoload, PDO 和 MySQLi,...

可兼容php5与php7的cURL文件上传功能实例分析

本文实例讲述了可兼容php5与php7的cURL文件上传功能。分享给大家供大家参考,具体如下: 为啥要写这个示例 最近修改一个项目,需要通过cURL上传文件。 记得之前做过类似实现的,于...

php实现的仿阿里巴巴实现同类产品翻页

如果左边的记录条数小于$space(页码区段)的值,页码$start从1开始向右增值。如果左则的记录条数多于$left(左右各显示页数)的值,$start将从左边记录数减去$left值开...