【获取文件信息的函数】
basename($path[,扩展名]) 返回文件路径中去掉路径后的文件名称。"/root/a.txt"输出a.txt;带上.txt输出a。
dirname($path); 查看目录名称。"/root/a.txt" 输出 /root。
pathinfo($path) 返回数组。"/root/a.txt" 输出array(dirname=>root,basename=>a.txt,extension=>txt)。
realpath($path);返回文件的绝对路径。realpath(“../../aaa.txt”); 输出 D:/aaa.txt。
filetype($path); 返回文件类型。 filesize($path); 计算文件大小(字节数)。
fileatime() 文件上次被访问的时间,filemtime() 文件上次被修改的时间。filesize()返回文件大小。file_exists()检查文件或目录是否存在。
disk_total_space() 返回一个目录所在的磁盘分区大小(字节数)。
fileperms() 获取文件的权限。
getimagesize("1.jpg"); 获取图片尺寸
 
【操作目录的函数】
mkdir() 创建目录:mkdir(‘image’,)
opendir() 打开目录:if(opendir("D:/www")) echo 'ok'; else echo 'fail';
closedir() 关闭目录。rename()重命名目录。rmdir() 删除空目录。
readdir() 读取文件目录,返回该目录下的所有文件名称。
$dir = opendir(“D:/www”);
while( ($file=readdir($dir)) !== false ){
echo $file;
}
closedir($dir);
 
【操作文件的函数】
fopen() 打开文件;fclose() 关闭文件;touch()创建文件;unlink()删除文件;copy()复制文件;rename()重命名文件;flock()锁定文件。
fwrite() 和 fputs() 和 file_put_contents($filename [,FILE_APPEND]): 写入文件。
is_writable() 检查文件是否可写,判断文件权限,同类is_readable() 检查文件是否可读,返回布尔值。
fread() 读取文件。 fgets() 读取文档中的一行。 fgetss() 读取文档一行并去掉HTML和PHP标记。
move_uploaded_file($upload_file,$path); 上传图片(form表单必须设置enctype="multipart/form-data"属性)。
stat() 返回关于文件的信息,本函数的结果会被缓存,使用clearstatcache()来清除缓存。
PHP输出CSV和EXCEL两种简单的方法:header("Content-type:application/vnd.ms-excel");header("Content-Disposition:filename=php100.xls");
文件指针函数:rewind()、fseek()、feof()、ftell() 。
 
【下载文件】
header("Content-Type:image/gif");
header('Content-Disposition: attachment; filename="logo3333.gif"');
header('Content-Length:'.filesize("logo.gif"));
readfile("logo.gif");
     
【从一个标准 url 里取出文件的扩展名】
function getExt($url){
$arr = parse_url($url);
$file = basename($arr['path']);
$ext = explode(".",$file);
return $ext[];
}
$str = "http://www.sina.com.cn/abc/de/fg.php?id=1";
echo getExt($str);// 输出:php
 
【删除非空目录】
function deldir($dirname){
if(file_exists($dirname)) {
$dir=opendir($dirname);
while($filename=readdir($dir)){
if($filename!="."&& $filename!=".."){
$file=$dirname."/".$filename;
if(is_dir($file)){
deldir($file);//使用递归删除子目录
}else{
echo'删除文件<b>'.$file.'</b>成功';
unlink($file);
}
}
}
closedir($dir);
echo'删除目录<b>'.$dirname.'</b>成功';
rmdir($dirname);
}
}
 
【复制非空目录】
function copydir($dirsrc, $dirto){
if(is_file($dirto)){
echo"目标不是目录不能创建";
return;
}
if(!file_exists($dirto)){
mkdir($dirto);
//echo "创建目录".$dirto."成功!";
}
$dir=opendir($dirsrc);
while($filename=readdir($dir)){
if($filename!="."&& $filename!=".."){
$file1=$dirsrc."/".$filename;
$file2=$dirto."/".$filename;
if(is_dir($file1)){
copydir($file1, $file2);//递归处理
}else{
copy($file1, $file2);
}
}
}
closedir($dir);
}
 
【PHP读取一个目录下的文件个数】
function FileCount($dir){
global $count;
if(is_dir($dir) && file_exists($dir)){
$ob=scandir($dir);
foreach($ob as $file){
if($file=="."||$file==".."){
continue;
}
$file=$dir."/".$file;
if(is_file($file)){
$count++;
}elseif(is_dir($file)){
FileCount($file);
}
}
}
}
//调用方法
$count=;
FileCount("DataRoom");
echo $count;exit;
 
【php获取目录中的所有文件名】
$handler = opendir('pic/common');
while( ($filename = readdir($handler)) !== false ) {
if($filename != "." && $filename != ".."){
echo $filename;
}
}
closedir($handler);
【判断远程图片(文件)是否存在】
function check_remote_file_exists($url) {
$curl = curl_init($url);
curl_setopt($curl, CURLOPT_NOBODY, true); // 不取回数据
$result = curl_exec($curl); // 发送请求
$found = false;
if ($result !== false) {
$statusCode = curl_getinfo($curl, CURLINFO_HTTP_CODE);
if ($statusCode == ) {
$found = true;
}
}
curl_close($curl);
return $found;
}
 

PHP操作文件常用函数的更多相关文章

  1. 7.打开文件、文件读写操作、with方式、文件常用函数

    打开文件: 在python3中,打开文件的函数是: open(file, mode='r', buffering=None, encoding=None, errors=None, newline=N ...

  2. php文件操作(最后进行文件常用函数封装)

    文件信息相关API $filename="./1-file.php"; //filetype($filename):获取文件的类型,返回的是文件的类型 echo '文件类型为:', ...

  3. python ftp操作脚本&常用函数

    需求:快速进行ftp上传 ,下载,查询文件 原来直接在shell下操作: 需要[连接,输用户名,输密码,单文件操作,存在超时限制] 太过于繁琐,容易操作失败 脚本改进: 一句命令,搞定多文件上传,下载 ...

  4. Python文件或目录操作的常用函数

    ◆ os.listdir(path) Return a list containing the names of the entries in the directory given by path. ...

  5. PHP_File文件操作简单常用函数

    php测试文件 <?php header("Content-type:text/html;charest=utf-8");$fileDir='Upload/File/cont ...

  6. NPOI操作Excel常用函数

    最近因项目接触了NPOI,感觉还是蛮不错的,网络上的教程普遍版本较老,本篇记录所常用操作,采用NPOI 2.0版本. 推荐: NPOI官方网站 NPOI 1.2.4/1.2.5 官方教程 新建Exce ...

  7. c语言字符串操作,及常用函数

    一,字符串操作 1 . strcpy : 拷贝 char *stpcpy(char *destin, char *source); 2 . strcat :  拼接 char *strcat(char ...

  8. JQuery之DOM操作及常用函数

    属性操作 attr(name)获取属性值 var imgSrc = $("img").attr("src") attr(name,value)设置属性值 $(& ...

  9. 【转】.NET NPOI操作Excel常用函数

    最近因项目接触了NPOI,感觉还是蛮不错的,网络上的教程普遍版本较老,本篇记录所常用操作,采用NPOI 2.0版本. 推荐: NPOI官方网站 NPOI 1.2.4/1.2.5 官方教程 新建Exce ...

随机推荐

  1. c# VS.NET 中的调试工具

  2. Django组件之forms

    forms:校验字段功能 针对一个实例:注册用户讲解. 模型:models.py class UserInfo(models.Model): name=models.CharField(max_len ...

  3. ubuntu 使用MySQL Workbench 连接远程云服务器mysql

    前提:我的是腾讯云的服务器,所以需要在安全组开发端口. 配置安全组 1.创建新用户 一般为了安全性,我们不直接使用root用户,而是选择创建一个新用户. 在服务器中,输入  mysql -u root ...

  4. C++——重载原理分析

    C不支持函数重载,C++支持 代码演示 main.c #include<stdio.h> void Max(int a, int b) { printf("%d ", ...

  5. 基于Keras实现mnist-官方例子理解

    前言 久闻keras大名,最近正好实训,借着这个机会好好学一下. 首先推荐一个API,可能稍微有点旧,但是写的是真的好 https://keras-cn.readthedocs.io/en/lates ...

  6. pringBoot2.0启用https协议

    SpringBoot2.0之后,启用https协议的方式与1.*时有点儿不同,贴一下代码. 我的代码能够根据配置参数中的condition.http2https,确定是否启用https协议,如果启用h ...

  7. G1垃圾收集器角色划分与重要概念详解【纯理论】

    继续接着上一次[https://www.cnblogs.com/webor2006/p/11129326.html]对G1进行理论化的学习,上一次学到了G1收集器的堆结构,回忆下: 接着继续对它进行了 ...

  8. 用来遍历map集合的方法

    map集合是以键值对进行存储值的,所以遍历map集合无非就是获取键和值,根据实际需求,进行获取键和值. 1.无非就是通过map.keySet()获取到值,然后根据键获取到值. for(String s ...

  9. javax.jms.JMSException: Failed to build body from content. Serializable class not available to broker. Reason: java.lang.ClassNotFoundException: Forbidden class com.javaliao.portal.model.TbLogVisit! T

    javax.jms.jmsexception:无法从内容生成正文.可序列化类不可用于代理原因:java.lang.ClassNotFoundException: 禁止类com.javaliao.por ...

  10. Java:JVM的内存模型

    JVM内存模型 JVM内存模型可以分为两个部分,如下图所示,堆和方法区是所有线程共有的,而虚拟机栈,本地方法栈和程序计数器则是线程私有的.   1. 堆(Heap) 堆内存是所有线程共有的,可以分为两 ...