【获取文件信息的函数】
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. TCP的三次握手和四次挥手与路由器(三层)转发原理

    传输层是国际标准化组织提出的开放系统互连(OSI)参考模型中的第四层.该层协议为网络端点主机上的进程之间提供了可靠.有效的报文传送服务.其功能紧密地依赖于网络层的虚拟电路或数据报服务.传输层定义了主机 ...

  2. 无线热点登陆认证原理探究---captive portal 什么是Captive Portal

    什么是Captive Portal 大家肯定都连过公共场所的wifi热点,比如麦当劳等地方的.他们的wifi往往一连上去就会弹出一个要求登录或者微信关注之类的页面,只有在这个页面完成操作了才能正常访问 ...

  3. DataTable通过Select进行过滤

    DataTable方法测试 //测试DataTable的select DataTable dt = new DataTable(); //a.OrderType, //a.[Status] dt.Co ...

  4. 投掷硬币(概率dp)

    小Hi有一枚神奇的硬币.已知第i次投掷这枚硬币时,正面向上的概率是Pi. 现在小Hi想知道如果总共投掷N次,其中恰好M次正面向上的概率是多少. Input 第一行包含两个整数N和M. 第二行包含N个实 ...

  5. EXCEL导入数据到SQL SERVER 2008

    项目中需要导入excel到SQL SERVER数据库 总是报截断, 本质问题是,SQL SERVER导入程序是根据EXCEL的第一行记录 (非标题行)来决定数据长度的 碰到这个问题,可以伪造第一行,然 ...

  6. U盘损坏?

  7. The 2019 China Collegiate Programming Contest Harbin Site I. Interesting Permutation

    链接: https://codeforces.com/gym/102394/problem/I 题意: DreamGrid has an interesting permutation of 1,2, ...

  8. [ARIA] Accessible animations with reduced motion

    Animations can make people sick, or worse! By adding animation toggles and listening in to the user' ...

  9. js中的数据类型以及转换

    Js中的数据类型 Js中的数据类型一共有六种,即number,string,boolean,underfine,null,object. 一,number Number数据类型指的是数字,可以为整型, ...

  10. 简单聊聊TiDB中sql优化的一个规则---左连接消除(Left Out Join Elimination)

    我们看看 TiDB 一段代码的实现 --- 左外连接(Left Out Join)的消除; select 的优化一般是这样的过程: 在逻辑执行计划的优化阶段, 会有很多关系代数的规则, 需要将逻辑执行 ...