首頁 後端開發 php教程 php中的filesystem文件系统函数介绍及使用示例_PHP

php中的filesystem文件系统函数介绍及使用示例_PHP

Jun 01, 2016 am 11:55 AM
檔案系統

basename — 返回路径中的文件名部分
dirname — 返回路径中的目录部分

复制代码 代码如下:
string basename ( string $path [, string $suffix ] )
string dirname ( string $path )

示例:
复制代码 代码如下:
$path = "/home/httpd/phpha.com/index.php";
echo basename($path);
echo basename($path, '.php');
echo basename($path, '.xxx');
echo dirname($path);
?>

复制代码 代码如下:
//结果:
index.php
index
index.php
/home/httpd/phpha.com

说明:如果文件名是以正确的suffix结束的,那这一部分也会被去掉。

chgrp — 改变文件所属的组
chown — 改变文件的所有者
chmod — 改变文件模式

复制代码 代码如下:
bool chmod ( string $filename , int $mode )

示例:

复制代码 代码如下:
chmod('/home/phpha.txt', 0755);
?>
copy — 拷贝文件

if(copy('index.php', 'index.php.bak')){
 echo 'copy success';
}
?>
//在当前目录下生存了index.php.bak文件

delete — 参见 unlink 或 unset
unlink — 删除文件

复制代码 代码如下:
if(unlink('index.php.bak')){
 echo 'unlink success';
}
?>
//删除了index.php.bak

disk_free_space — 返回目录中的可用空间
disk_total_space — 返回一个目录的磁盘总大小
diskfreespace — disk_free_space 的别名

复制代码 代码如下:
//在 Windows 下:
echo disk_free_space("C:"), '
';
echo disk_total_space("C:");
?>

复制代码 代码如下:
//结果:返回的是字节数
17433419776
32218386432

fopen — 打开文件或者 URL
fgets — 从文件指针中读取一行
feof — 测试文件指针是否到了文件结束的位置
fread — 读取文件(可安全用于二进制文件)
fwrite — 写入文件(可安全用于二进制文件)
fclose — 关闭一个已打开的文件指针

复制代码 代码如下:
$fp = fopen('hello.txt', 'r'); //打开一个文件
$n = 1;
while(!feof($fp)){
 echo $n, ' - ', fgets($fp), '
'; //读取一行并输出
 $n++;
}
fclose($fp); //关闭文件
?>

复制代码 代码如下:
//输出:
1 - Welcome to my blog:
2 - http://www.bitsCN.com

fgetc — 从文件指针中读取字符
fgetcsv — 从文件指针中读入一行并解析 CSV 字段
fgetss — 从文件指针中读取一行并过滤掉 HTML 标记
fputcsv — 将行格式化为 CSV 并写入文件指针
fputs — fwrite 的别名

复制代码 代码如下:
$fp = fopen('hello.txt', 'r');
while(false !== ($char = fgetc($fp))){
    echo $char, '-';
}
?>

复制代码 代码如下:
//输出:
W-e-l-c-o-m-e- -t-o- -m-y- -b-l-o-g-:- - -h-t-t-p-:-/-/-b-l-o-g-.-p-h-p-h-a-.-c-o-m-

file_exists — 检查文件或目录是否存在

复制代码 代码如下:
if(file_exists('hello.txt')){
 echo 'hello.txt exists';
}else{
 echo 'hello.txt not exists';
}
?>

[/code]
//输出:
hello.txt exists
[/code]

file_get_contents — 将整个文件读入一个字符串
file_put_contents — 将一个字符串写入文件
file — 把整个文件读入一个数组中

复制代码 代码如下:
if($content = file_get_contents('hello.txt')){
 file_put_contents('hello.txt.bak', $content);
}
?>
//相当于copy了一份hello.txt
if($content = file('hello.txt')){
 print_r($content);
}
?>
//数组形式,每一行是一个数组成员
Array
(
    [0] => Welcome to my blog:
    [1] => http://www.bitsCN.com
)

fileatime — 取得文件的上次访问时间
filectime — 取得文件的 inode 修改时间
filegroup — 取得文件的组
fileinode — 取得文件的 inode
filemtime — 取得文件修改时间
fileowner — 取得文件的所有者
fileperms — 取得文件的权限
filesize — 取得文件大小
filetype — 取得文件类型

复制代码 代码如下:
echo fileatime('hello.txt');
echo filectime('hello.txt');
echo filegroup('hello.txt');
echo filemtime('hello.txt');
echo fileowner('hello.txt');
echo substr(sprintf('%o', fileperms('hello.txt')), -4);
echo filesize('hello.txt');
echo filetype('hello.txt');
?>

复制代码 代码如下:
//输出:
1353329003
1353329003
0
1353330002
0
0666
42
file

flock — 轻便的咨询文件锁定
fnmatch — 用模式匹配文件名
fflush — 将缓冲内容输出到文件
fpassthru — 输出文件指针处的所有剩余数据
fscanf — 从文件中格式化输入
fseek — 在文件指针中定位
fstat — 通过已打开的文件指针取得文件信息
ftell — 返回文件指针读/写的位置
ftruncate — 将文件截断到给定的长度
glob — 寻找与模式匹配的文件路径

is_dir — 判断给定文件名是否是一个目录
is_executable — 判断给定文件名是否可执行
is_file — 判断给定文件名是否为一个正常的文件
is_link — 判断给定文件名是否为一个符号连接
is_readable — 判断给定文件名是否可读
is_uploaded_file — 判断文件是否是通过 HTTP POST 上传的
is_writable — 判断给定的文件名是否可写
is_writeable — is_writable 的别名
说明:以上函数都是用来判断文件或目录是否符合对应的条件,返回TRUE或FALSE。

lchgrp — Changes group ownership of symlink
lchown — Changes user ownership of symlink
link — 建立一个硬连接
linkinfo — 获取一个连接的信息
lstat — 给出一个文件或符号连接的信息
mkdir — 新建目录
move_uploaded_file — 将上传的文件移动到新位置
parse_ini_file — 解析一个配置文件
pathinfo — 返回文件路径的信息
pclose — 关闭进程文件指针
popen — 打开进程文件指针
readfile — 输出一个文件
readlink — 返回符号连接指向的目标
realpath — 返回规范化的绝对路径名
rename — 重命名一个文件或目录
rewind — 倒回文件指针的位置
rmdir — 删除目录
set_file_buffer — stream_set_write_buffer 的别名
stat — 给出文件的信息
symlink — 建立符号连接
tempnam — 建立一个具有唯一文件名的文件
tmpfile — 建立一个临时文件
touch — 设定文件的访问和修改时间
umask — 改变当前的 umask
clearstatcache — 清除文件状态缓存

本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡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)

修復事件ID 55,50,98,140磁碟錯誤在事件檢視器 修復事件ID 55,50,98,140磁碟錯誤在事件檢視器 Mar 19, 2024 am 09:43 AM

若您在Windows11/10的事件檢視器中發現事件ID55、50、140或98,或遇到磁碟檔案系統結構損壞且無法使用的錯誤,請依照下列指南解決此問題。什麼是事件55,磁碟上的檔案系統結構損壞和不可用的意思?第55屆會議,Ntfs磁碟上的檔案系統結構損壞且無法使用。請在磁碟區上執行chkMSK實用程式當NTFS無法將資料寫入交易日誌時,會觸發事件ID55的錯誤,這將導致NTFS無法完成無法寫入交易資料的操作。這種錯誤通常發生在檔案系統損壞的情況下,可能是由於磁碟上存在壞磁區或檔案系統對磁碟子系統的不

如何應對Linux系統中的檔案系統崩潰問題 如何應對Linux系統中的檔案系統崩潰問題 Jun 29, 2023 pm 04:05 PM

如何應對Linux系統中的檔案系統崩潰問題引言:隨著電腦技術的不斷發展,作業系統的穩定性和可靠性也變得越來越重要。然而,儘管Linux系統被廣泛認為是一個穩定且可靠的作業系統,但仍存在檔案系統崩潰的可能性。檔案系統崩潰可能會導致資料遺失和系統異常等嚴重後果。因此,本文將介紹如何應對Linux系統中的檔案系統崩潰問題,以幫助使用者更好地保護自己的資料和系統。

WIN10提示檔案系統錯誤2147416359的處理方法 WIN10提示檔案系統錯誤2147416359的處理方法 Mar 27, 2024 am 11:31 AM

1.按win+r進入運行窗口,輸入【services.msc】回車即可。 2.在服務視窗中,找到【windowslicensemanagerservice】,雙擊開啟。 3.在介面中,將啟動類型改為【自動】,然後點選【套用→確定】。 4、完成上面的設置,重啟電腦即可。

fstab(檔案系統表) fstab(檔案系統表) Feb 19, 2024 pm 06:30 PM

fstab(FileSystemTable)是Linux系統中的一個設定文件,用於定義系統啟動時掛載檔案系統的規則。 fstab檔案位於/etc目錄下,可透過手動建立或編輯器修改。每行規定一個要掛載的檔案系統。每一行有六個字段,它們的意義如下:檔案系統設備檔案或UUID可用於指定要掛載的檔案系統的設備,UUID是一個獨特的標識符,可透過blkid命令取得設備的UUID。 2.掛載點:指定檔案系統要掛載到的目錄,可以是絕對路徑(例如/mnt/data)或相對路徑(例如../data)。 3.檔案系統類

深入了解Linux的標準檔案系統(Ext2/Ext3/Ext4) 深入了解Linux的標準檔案系統(Ext2/Ext3/Ext4) Dec 31, 2023 pm 10:18 PM

Ext全名為Linuxextendedfilesystem,extfs,即Linux擴充檔案系統,Ext2就代表第二代檔案擴充系統,Ext3/Ext4以此類推,它們都是Ex​​t2的升級版,只不過增加了日誌功能,且彼此向下兼容,所以Ext2被稱為索引式檔案系統,而Ext3/Ext4被稱為日誌式檔案系統。備註:Linux支援許多檔案系統,包括網路檔案系統(NFS)、Windows的Fat檔案系統。查看Linux支援的檔案系統:ls-l/lib/modules/$(uname-r)/kernel/fs查看

不同之處:NTFS與FAT32 不同之處:NTFS與FAT32 Feb 18, 2024 pm 10:18 PM

NTFS和FAT32是兩種常見的檔案系統,用於組織和管理電腦硬碟上的資料。雖然它們都具有一些共同的功能和特點,但在許多方面也有一些重要的區別。本文將探討NTFS和FAT32之間的幾個主要差異。功能與效能:NTFS(NewTechnologyFileSystem)是微軟Windows作業系統中較新的檔案系統,它具備許多先進的功能,如資料壓縮、檔案加密、

Go語言中如何處理並發檔案的檔案系統檔案鎖定和進程間檔案共用問題? Go語言中如何處理並發檔案的檔案系統檔案鎖定和進程間檔案共用問題? Oct 09, 2023 pm 05:53 PM

Go語言中處理並發檔案的檔案系統檔案鎖定和進程間檔案共享問題引言:在Go語言中,我們常常需要處理並發存取檔案的情況,包括檔案系統檔案鎖定和進程間檔案共用。本文將介紹如何使用Go語言處理這些問題,並提供具體的程式碼範例。一、檔案系統檔案鎖在多個並發程式同時存取同一個檔案時,為了避免出現競爭條件和資料不一致的問題,我們可以使用檔案系統檔案鎖定來進行同步。 Go語言提供了s

Linux系統指令大全。 Linux系統指令大全。 Feb 19, 2024 pm 10:54 PM

以下是常見的Linux系統指令大全(按字母順序排列):alias:設定指令別名awk:文字處理工具,用於擷取和操作文字資料cat:連接檔案並列印到標準輸出cd:改變目前工作目錄chmod:修改檔案或目錄的權限chown:修改檔案或目錄的擁有者和所屬群組chroot:改變根檔案系統目錄cp:複製檔案或目錄cron:定時任務管理工具curl:用於下載或上傳檔案的命令列工具cut :按列提取文字資料date:顯示或設定係統日期和時間dd:複製和轉換檔案df:顯示檔案系統的磁碟使用情況diff:比較檔案或目

See all articles