浅析is_writable的php实现

2015-01-24信息快讯网

本篇文章是对is_writable的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;
        }
    }
}
php中sql注入漏洞示例 sql注入漏洞修复
php 发送带附件邮件示例
php 获取页面中指定内容的实现类
php 根据url自动生成缩略图并处理高并发问题
php 字符串压缩方法比较示例
php多种形式发送邮件(mail qmail邮件系统 phpmailer类)
discuz加密解密函数使用方法和中文注释
linux系统下php安装mbstring扩展的二种方法
php检测用户是否用手机(Mobile)访问网站的类
eaglephp使用微信api接口开发微信框架
利用浏览器的Javascript控制台调试PHP程序
php Calender(日历)代码分享
php二维数组排序方法(array_multisort usort)
php calender(日历)二个版本代码示例(解决2038问题)
discuz免激活同步登入代码修改方法(discuz同步登录)
浅析echo(),print(),print_r(),return之间的区别
PHP echo,print,printf,sprintf函数之间的区别与用法详解
php5.3 不支持 session_register() 此函数已启用的解决方法
session在php5.3中的变化 session_is_registered() is deprecated in
FireFox浏览器使用Javascript上传大文件
解析:通过php socket并借助telnet实现简单的聊天程序
解析mysql left( right ) join使用on与where筛选的差异
ubuntu下编译安装xcache for php5.3 的具体操作步骤
编译php 5.2.14+fpm+memcached(具体操作详解)
解析PHP实现多进程并行执行脚本
PHP实现多进程并行操作的详解(可做守护进程)
解析php中static,const与define的使用区别
php empty()与isset()区别的详细介绍
Linux Apache PHP Oracle 安装配置(具体操作步骤)
thinkphp中连接oracle时封装方法无法用的解决办法
解决File size limit exceeded 错误的方法
eAccelerator的安装与使用详解
基于PHP输出缓存(output_buffering)的深入理解
php缓冲 output_buffering的使用详解
探讨:使用XMLSerialize 序列化与反序列化
如何利用php array_multisort函数 对数据库结果进行复杂排序
PHP stripos()函数及注意事项的分析
探讨PHP中this,self,parent的区别详解
深入php self与$this的详解
深入PHP empty(),isset(),is_null()的实例测试详解
©2014-2024 dbsqp.com