PHP文件和目录操作
目录操作
$base_dir = 'filelist/';
$fso = opendir($base_dir);//打开目录,返回目录句柄
echo 'Basedir:'.$base_dir.'<hr />';
while($filelist = readdir($fso))
{echo $filelist.'<br />';
}
closedir($fs);//关闭目录句柄
可以使用dirname($path)和basename($path)来分别返回路径的目录部分和文件名部分,可以用disk_free_space($path)返回空间的剩余大小。
创建命令:
mkdir($path,0777):0777是权限码,在非Windows下可用umask()来设置
rmdir($path):删除路径$path下的文件
新建文件
首先,要确定所创建文件所在目录的权限,建议设置为777,新建文件的名称建议使用绝对路径。
$filename = 'test.txt';
$fp = fopen($filename, 'w+');//打开文件指针,创建文件
if(!is_writable($filename))
{die('文件:'.$filename.'不可写,请检查!');
}
fclose($fp);//关闭指针
读取文件
首先判断文件能否读取(权限问题),然后判断文件是否存在
$filename = 'test.txt';
if(is_readable($filename) == false)
{die('文件不存在或无法读取');
}if(file_exists($filename) == false)
{die('文件不存在');
}$content = file_get_contents($filename);echo htmlentities($data);
写文件
$filename = 'test.txt';
if(is_writeable($filename) == false)
{die('不能写入');
}$content = 'Hello World';file_put_contents($filename, $content);
file_put_contents()是在PHP5中新引进的函数,低版本的PHP无法使用,可以使用以下方式:
$filename = 'test.txt';
$data = 'Hello World';
$handle = fopen($filename, 'w');
fwrite($handle, $data);
fclose($handle);
写入文件的时候有时候需要锁定,然后写
function cache_page($pageurl, $pagedata)
{if(!$fso = fopen($pageurl, 'w')){$this->warns('无法打开缓存文件');return false;}//LOCK_NB,排他型锁定if(!flock($fsom, LOCK_EX)){$this->warns('无法锁定缓存文件');return false;}//写入字节流,serizlize写入其他格式if(!fwrite($fso, $pagedata)){$this->warns('无法写入缓存文件');return false;}//释放锁定flock($fso, LOCK_UN);fclose($fso);return true;
}
删除文件
$file = 'test.txt';
$result = @unlink($file);
复制文件
$file = 'test.txt';
$newfile = 'new.txt';//这个文件父文件夹必须可写
if(file_exists($file) == false)
{die('文件不存在');
}$result = copy($file, $newfile);if($result == false)
{echo 'Done';
}
获取文件属性
$file = 'test.txt';//获取最近修改时间
echo date('r', filemtime($file));//获取上次被访问时间
echo date('r', fileatime($file));//返回文件所有者
echo posix_getpwuid(fileowner($file));//获取文件权限,非Win
echo substr(sprintf('$o', fileperms($file), -4));//返回文件大小
echo filesize($file).'bytes';//返回文件的全部信息
var_dump(stat($file));
PHP文件和目录操作相关推荐
- python操作目录_详解python中的文件与目录操作
详解python中的文件与目录操作 一 获得当前路径 1.代码1 >>>import os >>>print('Current directory is ',os. ...
- python创建文件os_Python之文件与目录操作(os、zipfile、tarfile、shutil)
Python中可以用于对文件和目录进行操作的内置模块包括: 模块/函数名称功能描述 open()函数 文件读取或写入 os.path模块 文件路径操作 os模块 文件和目录简单操作 zipfile模块 ...
- Shell命令-文件及目录操作之mkdir、mv
文件及目录操作 - mkdir.mv 1.mkdir:创建目录 mkdir命令的功能说明 mkdir命令用于创建目录,默认情况下,要创建的目录已存在,会提示文件存在,不会继续创建目录. mkdir命令 ...
- linux文件目录操作实验报告,Linux操作系统实验4文件和目录操作
<Linux操作系统>课程实验报告 实验4 文件和目录操作 一.实验目的 1.理解Linux文件系统的结构和目录组织方式: 2.掌握Linux常用目录和文件命令的使用. 二.实验内容与要求 ...
- 史上最完整的文件和目录操作类
[文件操作类]史上最完整的文件和目录操作类 <a target=_blank href="http://bbs.cskin.net/thread-114-1-1.html"& ...
- Shell命令-文件及目录操作之chattr、lsattr
文件及目录操作 - chattr.lsattr 1. chattr:改变文件属性 chattr命令的功能说明 chattr命令用于改变文件属性.这项指令可改变存放在ext2文件系统上的文件或目录属性, ...
- Java编程的逻辑 (59) - 文件和目录操作
本系列文章经补充和完善,已修订整理成书<Java编程的逻辑>,由机械工业出版社华章分社出版,于2018年1月上市热销,读者好评如潮!各大网店和书店有售,欢迎购买,京东自营链接:http:/ ...
- Python 文件和目录操作总结
Python文件和目录操作总结: 1. Python 中os模块基本命令 头文件 import os # 提供对操作系统进行调用的接口 os常用指令 1 os.getcwd() # 获取当前工作目录, ...
- pathon和python_Python文件和目录操作详解
一.文件的打开和创建 1.打开 open(file,mode): >>>fo = open('test.txt', 'r') >>>fo.read() 'hello ...
- python显示目录中的文件_Python中的文件和目录操作实现
Python中的文件和目录操作实现 对于文件和目录的处理,虽然可以通过操作系统命令来完成,但是Python语言为了便于开发人员以编程的方式处理相关工作,提供了许多处理文件和目录的内置函数.重要的是,这 ...
最新文章
- Intelij IDEA 2016.3安装mybatis插件并激活教程
- Segmentation and Paging
- Adob Flash Professional CS6发布Android手机应用报异常
- Coursera心理学课程考试小抄
- C++实现播放音频文件
- Xcode创建头文件
- 剪映怎么把无字幕的英文视频翻译成制作成中文字幕?(附教程+剪映字幕翻译工具免费下载)...
- 电脑分屏操作,提高工作和学习效率
- 支付宝当面付(统一收单线下交易预创建,二维码扫码支付)
- ZYNQ UltraScale MPSOC,使用PL端AXI_UART16550IP核,且在PS端控制下实现RS485通信-----轮询方式
- [Zer0pts2020]easy strcmp 分析与加法
- 腾讯云工商注册服务重磅上线!全场低至10元起
- upx壳的一些简单脱壳,望大牛勿喷。
- php DOS word在线预览,如何在 Zoho Docs 中在线预览文件
- js为什么设置为单线程,怎么实现多线程
- 运行结果是随机数——我帮你解决
- 银行使用计算机实现通存通兑是什么,银行柜台上办业务用的那种计算机是什么计算机?...
- 华为android能用几年,最强的国产安卓,一部华为手机能用多久?
- 机载雷达导论(第21~23章)
- WIFI中的DCA信道和EIRP功率
热门文章
- R语言ggplot2可视化使用facet_grid构建多个子图(facet、面图)并自定义每个子图(facet、面图)的文本实战
- R语言使用survminer包生存分析及可视化(ggsurvplot)实战详解:从数据集导入、生存对象生成、ggsurvplot可视化参数配置、设置、可视化对比
- R卡方独立性检验(Chi-Square Test of Independence)
- R语言回归模型协方差分析(Analysis of Covariance)
- 机器学习+优化问题的种类、如何优化、凸优化、非凸优化、对偶问题、KKT条件
- 常见的容错机制+failover+failback
- Keras构建前馈神经网络并使用callbacks输出acc以及loss曲线(训练接、验证集)及效果可视化
- R语言定量变量组间差异检验
- MMD_2b_NearestNeighborLearning
- java如何使实验箱蜂鸣器响_按键按一次蜂鸣器响一次的单片机程序