在PHP中,可用is_writable()函数来判断一个 文件/目录 是否可写,用是否可生成文件的方式判断目录是否可写;网上的一些代码大多数能判断linux系统,但windows服务器下判断不准确。

下面的代码兼容windows和linux判断文件或目录是否可写:

/* 判断 文件/目录 是否可写(取代系统自带的 is_writeable 函数)

* file 文件/目录

* 返回true或false

*/

function isWritable($file){

if(is_dir($file)){

$dir = $file;

if ($fp = @fopen("$dir/test.txt", 'w')) {

@fclose($fp);

@unlink("$dir/test.txt");

$writeable = true;

} else {

$writeable = false;

}

} else {

if ($fp = @fopen($file, 'a+')) {

@fclose($fp);

$writeable = true;

} else {

$writeable = false;

}

}

return $writeable;

}

linux php目录是否存在,PHP判断文件或者目录是否可写,兼容windows/linux系统相关推荐

  1. python判断linux中文件是否存在_linux shell 中判断文件、目录是否存在的方法

    本文主要介绍了linux shell 中判断文件.目录是否存在的方法,分享给大家 -e filename 如果 filename存在,则为真 -d filename 如果 filename为目录,则为 ...

  2. linux判断目录是否存在命令,linux shell 中判断文件、目录是否存在的方法

    本文主要介绍了linux shell 中判断文件.目录是否存在的方法,分享给大家 -e filename 如果 filename存在,则为真 -d filename 如果 filename为目录,则为 ...

  3. linux函数怎么判断目录是否存在,linux C之判断文件或目录是否存在 access函数

    http://blog.sina.com.cn/s/blog_6a1837e90100uh5d.html access():判断是否具有存取文件的权限 相关函数    stat,open,chmod, ...

  4. linux下判断文件和目录是否存在[总结]

    原文地址为: linux下判断文件和目录是否存在[总结] 1.前言 工作中涉及到文件系统,有时候需要判断文件和目录是否存在.我结合APUE第四章文件和目录,总结一下如何正确判断文件和目录是否存在,方便 ...

  5. linux if 判断文件,shell中的逻辑判断,if 判断文件、目录属性,if判断的一些特殊用法...

    格式1:if 条件 ; then 语句; fi //如果满足条件,然后执行语句 [root@akuilinux01 shell]# cat if1.sh #!/bin/bash a=5 if [ $a ...

  6. java linux 读取文件是否存在_linux下判断文件和目录是否存在

    1.前言 工作中涉及到文件系统,有时候需要判断文件和目录是否存在.我结合APUE第四章文件和目录,总结一下如何正确判断文件和目录是否存在,方便以后查询. 2.stat系列函数 stat函数用来返回与文 ...

  7. 虚拟机下判断文件或目录是否存在

    Linux环境中判断文件或目录是否存在 #!/bin/bash # 判断文件或目录是否存在 if [ $# -eq 0 ] ;then echo "未输入任何参数,请输入参数" e ...

  8. win32 c语言检测文件是否存在,判断文件、目录是否存在:C、C++、Windows API、 boost...

    一.判断文件是否存在 #ifdef WIN32 #include //C (Windows) access #else #include //C (Linux) access #endif #incl ...

  9. 【C、C++、Windows API、 boost】多种方式判断文件、目录是否存在

    转载本文是为了实际之需要,方便查阅. 一.判断文件是否存在 #ifdef WIN32 #include <io.h> //C (Windows) access #else #include ...

最新文章

  1. Spark发布1.3.0版本
  2. python之拆包与装包
  3. Gson解析JSON数据中动态未知字段key的方法
  4. 黑客与画家 第十四章
  5. 一道题,最小操作次数使数组元素相等引发的思考
  6. 前端开发——移动端及响应式布局解决办法总结(适配)
  7. Linux 块设备,Block Layer层架构演变
  8. shell的date命令:使用方法,以及小时、分钟的计算
  9. 定义一个没有参数的函数、输出python3次_Python函数参数详解,三天让你掌握python,不再是小白
  10. GNU make manual 翻译(五十二)
  11. 基于Python和MySQL的学生信息管理系统
  12. 创建MSN界面式的Ext JS布局
  13. 深度强化学习在滴滴路径规划中的探索实践
  14. 微信小程序开发教程(0)-读《微习惯》到开发小程序
  15. 简述74HC595功能
  16. 如何制作一个vagrant的base box 及安装 additions
  17. 【css】使用 canvas 画一个圆、贝塞尔曲线画对话气泡
  18. 树莓派声音输出设置_树莓派3 之 音响配置
  19. 6大Word编辑高级技巧,制作文档又快又好看
  20. 自动化交易系统(Auto Trading System)的一些资料

热门文章

  1. 传感器是大数据的重要来源
  2. Example017简单的下拉框
  3. mysql复习增删改查
  4. Gradle学习系列之十——自定义Plugin(本系列完)
  5. 父类中“this” 指向问题
  6. 基于Spring+SpringMvc实现的足球队管理系统
  7. 基因名2-MAR等错误名字产生原因
  8. Python 与 Excel结合
  9. Structured Streaming从Kafka 0.8中读取数据的问题
  10. 移动端页面自适应解决方案—rem布局(进阶版)