目录
目录
1 :basename()
2 :copy()
3 :dirname()
4 :disk_free_space()
5 :disk_total_space()
6 :file_exists()
7 :file_get_contents()
8 :file_put_contents()
9 :filesize()
10 :filetype()
11 :glob()
12 :is_dir()
13 :is_writable()
14 :mkdir()
15 :move_uploaded_file()
16 :parse_ini_file()
17 :realpath()
18 :rename()
19 :tempnam()
20 :tmpfile()
21:unlink()
22 :chmod()
23:chown()
24:chgrp()
首页 后端开发 php教程 PHP常用的文件操作函数总结

PHP常用的文件操作函数总结

Apr 03, 2024 pm 02:52 PM
jquery seo php编程 后端开发 addclass

PHP常用的文件操作函数总结

php小编柚子精心整理了PHP常用的文件操作函数总结,为广大PHP开发者提供了一份实用的文件操作函数参考指南。通过本文的总结,读者可以快速了解PHP中文件操作的各种常用函数,提高文件处理的效率和准确性。无论是对于初学者还是有一定开发经验的开发者,都能从文章中获得实用的技术知识和经验。

注:文件操作函数的行为受到 php.ini 中设置的影响。

当在 Unix 平台上规定路径时,正斜杠 (/) 用作目录分隔符。而在 windows 平台上,正斜杠 (/) 和反斜杠 () 均可使用。

1 :basename()

返回路径中的文件名。分为带扩展名和不带扩展名的。

语法:basename(path,suffix)

Path:必需。规定要检查的路径。

Suffix:可选。规定文件扩展名。如果文件有名有文件扩展名,将不会显示这个扩展名。

// basename 
$path = "/testWEB/home.php";
// 输出文件名,包含扩展名
echo basename($path) ."<br/>";// home.php
// 输出文件名,不包含扩展名
echo basename($path,".php");// home
登录后复制

2 :copy()

复制文件。该函数如果成功则返回 TRUE,如果失败则返回 FALSE。如果目标文件已存在,将会被覆盖。

语法:copy(file,to_file)

File:必需。规定要复制的文件。

to_file:必需。规定复制文件的目的地。

// 复制文件,返回值为bool
echo copy("source.txt","target.txt");
登录后复制

3 :dirname()

返回路径中的目录部分。

语法:dirname(path)

Path:必需。规定要检查的路径。

// 返回文件路径
echo dirname("c:/testweb/home.php")."<br>";// c:/testweb/
echo dirname("/testweb/home.php");// /testweb/
登录后复制

4 :disk_free_space()

返回目录的可用空间。,以字节为单位。

语法:disk_free_space(directory)

Directory:必需。规定要检查的目录。(该目录有限制)

// 返回指定目录的可用空间(查询的目录是有限制的)
echo disk_free_spac&#101;("D:/wwwroot/xxx.com/");
登录后复制

5 :disk_total_space()

返回一个目录的磁盘总容量。返回字节数

语法:disk_total_space(directory)

Directory:必需。规定要检查的目录。

echo disk_total_spac&#101;("C:/Windows/Temp/");
echo "<hr>";
登录后复制

6 :file_exists()

检查文件或目录是否存在。返回bool值

语法:file_exists(path)

Path:必需。规定要检查的路径。

// 查看test.txt是否存在,返回bool值
echo file_exists("target.txt"); // 1
echo "<hr>";
登录后复制

7 :file_get_contents()

将文件读入字符串

语法:file_get_contents(path,include_path,context,start,max_length)

Path:必需。规定要读取的文件。

include_path:可选。如果您还想在 include_path(在 php.ini 中)中搜索文件的话,请设置该参数为 '1'。

Context:可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。若使用 NULL,则忽略。

Start:可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 中新增的。

max_length:可选。规定读取的字节数。该参数是 PHP 5.1 中新增的。

// 读取文件
echo file_get_contents("target.txt");
echo "<hr>";
登录后复制

提示: 该函数是二进制安全的。(意思是二进制数据(如图像)和字符数据都可以使用此函数写入。)

8 :file_put_contents()

将字符串写入文件。如果成功,该函数将返回写入文件中的字符数。如果失败,则返回 False。

语法:int file_put_contents ( string filename,mixedfilename , mixed filename,mixeddata [, int flags=0[,resourceflags = 0 [, resource flags=0[,resourcecontext ]] )

File:必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。

Data:必需。规定要写入文件的数据。可以是字符串、数组或数据流。

Mode:可选。规定如何打开/写入文件。可能的值:FILE_USE_INCLUDE_PATH/FILE_APPEND/LOCK_EX

Context:可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。

// 写入文件
echo file_put_contents("sites.txt","Runoob");
echo "<hr>";
登录后复制

9 :filesize()

函数返回指定文件的大小。

如果成功,该函数返回文件大小的字节数。如果失败,则返回 FALSE。

语法:filesize(filename)

Filename:必需。规定要检查的文件。

// 返回文件大小
echo filesize("target.txt");
echo "<hr>";
登录后复制

10 :filetype()

函数返回指定文件或目录的类型。

若成功,则返回 7 种可能的值。若失败,则返回 false。

语法:filetype(filename)

Filename:必需。规定要检查的文件。

// 返回文件类型
echo filetype("target.txt");
echo "<hr>";
登录后复制

11 :glob()

返回一个包含匹配指定模式的文件名/目录的数组。

glob() 函数返回匹配指定模式的文件名或目录。

该函数返回一个包含有匹配文件 / 目录的数组。如果出错返回 false。

语法:glob(pattern,flags)

File:必需。规定检索模式。

Size:可选。规定特殊的设定。

  • GLOB_MARK - 在每个返回的项目中加一个斜线
  • GLOB_NOSORT - 按照文件在目录中出现的原始顺序返回(不排序
  • GLOB_NOCHECK - 如果没有文件匹配则返回用于搜索的模式
  • GLOB_NOESCAPE - 反斜线不转义元字符
  • GLOB_BRACE - 扩充 {a,b,c} 来匹配 'a','b' 或 'c'
  • GLOB_ONLYDIR - 仅返回与模式匹配的目录项
  • GLOB_ERR - 停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误

注释:GLOB_ERR 是 PHP 5.1 添加的。

echo "<pre class="brush:php;toolbar:false">";
var_dump(glob("*.*"));
echo "<hr>";
登录后复制

12 :is_dir()

判断指定的文件名是否是一个目录。

语法:is_dir(file)

File:必需。规定要检查的文件。

$file = "D:/wwwroot/xxx.com/";
if(is_dir($file))
{
echo ("$file is a directory");
}
else
{
echo ("$file is not a directory");
}
echo "<hr>";
登录后复制

13 :is_writable()

判断文件是否可写。如果文件存在并且可写则返回 true。

语法:is_writable(file)

File:必需。规定要检查的文件。

$file = "target.txt";
if(is_writable($file))
{
echo ("$file is writeable");
}
else
{
echo ("$file is not writeable");
}
 
echo "<hr>";
登录后复制

14 :mkdir()

创建目录,如果成功该函数返回 TRUE,如果失败则返回 FALSE。

语法:mkdir(path,mode,recursive,context)

Path:必需。规定要创建的目录的名称。

Mode:可选。规定权限。默认是 0777(允许全局访问)。

mode 参数由四个数字组成:

第一个数字通常是 0

第二个数字规定所有者的权限

第三个数字规定所有者所属的用户组的权限

第四个数字规定其他所有人的权限

可能的值(如需设置多个权限,请对下面的数字进行总计):

1 = 执行权限

2 = 写权限

4 = 读权限

Recursive:可选。规定是否设置递归模式。(PHP 5 中新增的)

Context:可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。(PHP 5 中新增的)

echo mkdir("testing");
echo "<hr>";
登录后复制

注释: mode 参数在 Windows 平台上被忽略。

15 :move_uploaded_file()

将上传的文件移动到新位置。若成功,则返回 true,否则返回 false。

文件上传的核心就是这个文件

语法:move_uploaded_file(file,newloc)

File:必需。规定要移动的文件。

Newloc:必需。规定文件的新位置。

注释:本函数仅用于通过 Http POST 上传的文件。

注意:如果目标文件已经存在,将会被覆盖。

16 :parse_ini_file()

函数解析一个配置文件(ini 文件),并以数组的形式返回其中的设置。

语法:parse_ini_file(file,process_sect<strong class="keylink">io</strong>ns)

File:必需。规定要检查的 ini 文件。

process_sections:可选。如果设置为 TRUE,则返回一个多维数组,包括了配置文件中每一节的名称和设置。默认是 FALSE。

echo "<pre class="brush:php;toolbar:false">";
var_dump(parse_ini_file("test.ini"));
echo "<hr>";
登录后复制

注:此ini文件不一定非的是php.ini,也可以是你自己的ini配置文件。

17 :realpath()

该函数删除所有符号连接(比如 '/./', '/../' 以及多余的 '/'),并返回绝对路径名。

如果失败,该函数返回 FALSE。

语法:realpath(path)

Path:必需。规定要检查的路径。

echo realpath("test.ini");

18 :rename()

rename() 函数重命名文件或目录。

如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。

语法:rename(oldname,newname,context)

Oldname:必需。规定要重命名的文件或目录。

Newname:必需。规定文件或目录的新名称。

Context:可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。

echo rename("test.ini","testss.ini");
echo "<hr>";
登录后复制

19 :tempnam()

创建唯一的临时文件。若成功,则该函数返回新的临时文件名。若失败,则返回 false。

语法:tempnam(dir,prefix)

Dir:必需。规定创建临时文件的目录。

Prefix:必需。规定文件名的开头。

echo tempnam("D:wwwrootxxx.com","TMP0");
echo "<hr>";
登录后复制

注: 此方法创建的文件,如果不再需要该文件则要删除此文件,不会自动删除的。

20 :tmpfile()

建立临时文件。此函数创建的临时文件会在文件关闭后(用 fclose())或当脚本结束后自动被删除。

语法:tmpfile()

$temp = tmpfile();
fwrite($temp, "Testing, testing.");
// 将文件指针的位置倒回文件的开头。
rewind($temp);
// 从文件中读取1K数据
echo fread($temp,1024);
//This removes the file
fclose($temp);
登录后复制

删除文件。如果成功,该函数返回 TRUE。如果失败,则返回 FALSE。

语法:unlink(filename,context)

Filename:必需。规定要删除的文件。

Context:可选。规定文件句柄的环境。context 是一套可以修改流的行为的选项。

// 如果没有text.txt文件,这样写输出的结果会报警告,测试代码,就这样了
// 实际用的时候,需要注意这个问题
$file = "test.txt";
if (!unlink($file))
{
echo ("Error deleting $file");
}
else
{
echo ("Deleted $file");
}
登录后复制

22 :chmod()

改变文件权限。如果成功则返回 TRUE,如果失败则返回 FALSE。

语法:chmod(file,mode)

File:必需。规定要检查的文件。

Mode:必需。规定新的权限。

mode 参数由 4 个数字组成:

第一个数字通常是 0

第二个数字规定所有者的权限

第三个数字规定所有者所属的用户组的权限

第四个数字规定其他所有人的权限

可能的值(如需设置多个权限,请对下面的数字进行总计):

1 = 执行权限

2 = 写权限

4 = 读权限

echo chmod("target.txt",0600);
echo "<hr>";
登录后复制

23:chown()

改变文件所有者。如果成功则返回 TRUE,如果失败则返回 FALSE。

语法:chown(file,owner)

File:必需。规定要检查的文件。

Owner:必需。规定新的所有者。可以是用户名或用户的 ID。

echo chown("target.txt","root");
echo "<hr>";
登录后复制

24:chgrp()

改变文件组。如果成功则返回 TRUE,否则返回 FALSE。

语法:chgrp(file,group)

File:必需。规定要检查的文件。

Group:可选。规定新的组。可以是组名或组的 ID。

echo chgrp("test.txt","admin");
echo "<hr>";
登录后复制

以上是PHP常用的文件操作函数总结的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

AI Hentai Generator

AI Hentai Generator

免费生成ai无尽的。

热门文章

R.E.P.O.能量晶体解释及其做什么(黄色晶体)
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳图形设置
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您听不到任何人,如何修复音频
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解锁Myrise中的所有内容
4 周前 By 尊渡假赌尊渡假赌尊渡假赌

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

PHP将行格式化为 CSV 并写入文件指针 PHP将行格式化为 CSV 并写入文件指针 Mar 22, 2024 am 09:00 AM

这篇文章将为大家详细讲解有关PHP将行格式化为CSV并写入文件指针,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。将行格式化为CSV并写入文件指针步骤1:打开文件指针$file=fopen("path/to/file.csv","w");步骤2:将行转换为CSV字符串使用fputcsv()函数将行转换为CSV字符串。该函数接受以下参数:$file:文件指针$fields:作为数组的CSV字段$delimiter:字段分隔符(可选)$enclosure:字段引号(

PHP改变当前的 umask PHP改变当前的 umask Mar 22, 2024 am 08:41 AM

这篇文章将为大家详细讲解有关PHP改变当前的umask,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP更改当前的umask概述umask是一个用于设置新创建的文件和目录的默认文件权限的php函数。它接受一个参数,这是一个八进制数字,表示要阻止的权限。例如,要阻止对新创建的文件进行写入权限,可以使用002。更改umask的方法有两种方法可以更改PHP中的当前umask:使用umask()函数:umask()函数直接更改当前umask。其语法为:intumas

PHP建立一个具有唯一文件名的文件 PHP建立一个具有唯一文件名的文件 Mar 21, 2024 am 11:22 AM

这篇文章将为大家详细讲解有关PHP建立一个具有唯一文件名的文件,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。在PHP中创建唯一文件名的文件简介在php中创建具有唯一文件名的文件对于组织和管理文件系统至关重要。唯一文件名确保不会覆盖现有文件,并便于查找和检索特定文件。本指南将介绍在PHP中生成唯一文件名的几种方法。方法1:使用uniqid()函数uniqid()函数生成一个基于当前时间和微秒的唯一字符串。此字符串可以作为文件名的基础。

PHP计算文件的 MD5 散列 PHP计算文件的 MD5 散列 Mar 21, 2024 pm 01:42 PM

这篇文章将为大家详细讲解有关PHP计算文件的MD5散列,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP计算文件的MD5散列MD5(MessageDigest5)是一种单向加密算法,可将任意长度的消息转换为固定长度的128位哈希值。它广泛用于确保文件完整性、验证数据真实性和创建数字签名。在PHP中计算文件的MD5散列php提供了多种方法来计算文件的MD5散列:使用md5_file()函数md5_file()函数直接计算文件的MD5哈希值,返回一个32个字符的

PHP将文件截断到给定的长度 PHP将文件截断到给定的长度 Mar 21, 2024 am 11:42 AM

这篇文章将为大家详细讲解有关PHP将文件截断到给定的长度,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP文件截断简介php中的file_put_contents()函数可用于将文件截断到指定长度。截断是指删除文件末尾的部分内容,从而缩短文件长度。语法file_put_contents($filename,$data,SEEK_SET,$offset);$filename:要截断的文件路径。$data:要写入文件的空字符串。SEEK_SET:指定为文件开始处

PHP返回一个键值翻转后的数组 PHP返回一个键值翻转后的数组 Mar 21, 2024 pm 02:10 PM

这篇文章将为大家详细讲解有关PHP返回一个键值翻转后的数组,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP键值翻转数组键值翻转是一种对数组进行的操作,它将数组中的键和值进行交换,生成一个新的数组,其中原始键作为值,原始值作为键。实现方法在php中,可以通过以下方法对数组进行键值翻转:array_flip()函数:array_flip()函数专门用于键值翻转操作。它接收一个数组作为参数,并返回一个新的数组,其中键和值已交换。$original_array=[

PHP返回上一个 MySQL 操作中的错误信息的数字编码 PHP返回上一个 MySQL 操作中的错误信息的数字编码 Mar 22, 2024 pm 12:31 PM

这篇文章将为大家详细讲解有关PHP返回上一个Mysql操作中的错误信息的数字编码,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。利用PHP返回MySQL错误信息数字编码引言在处理mysql查询时,可能会遇到错误。为了有效处理这些错误,了解错误信息数字编码至关重要。本文将指导您使用php获取Mysql错误信息数字编码。获取错误信息数字编码的方法1.mysqli_errno()mysqli_errno()函数返回当前MySQL连接的最近错误号码。语法如下:$erro

PHP判断某个数组中是否存在指定的key PHP判断某个数组中是否存在指定的key Mar 21, 2024 pm 09:21 PM

这篇文章将为大家详细讲解有关PHP判断某个数组中是否存在指定的key,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。PHP判断某个数组中是否存在指定的key:在php中,判断某个数组中是否存在指定的key的方法有多种:1.使用isset()函数:isset($array["key"])该函数返回布尔值,如果指定的key存在,则返回true,否则返回false。2.使用array_key_exists()函数:array_key_exists("key",$arr

See all articles