php中的filesystem文件系統(tǒng)函數(shù)介紹及使用示例
basename — 返回路徑中的文件名部分
dirname — 返回路徑中的目錄部分
string basename ( string $path [, string $suffix ] )
string dirname ( string $path )
示例:
<?php
$path = "/home/httpd/phpha.com/index.php";
echo basename($path);
echo basename($path, '.php');
echo basename($path, '.xxx');
echo dirname($path);
?>
//結(jié)果:
index.php
index
index.php
/home/httpd/phpha.com
說明:如果文件名是以正確的suffix結(jié)束的,那這一部分也會(huì)被去掉。
chgrp — 改變文件所屬的組
chown — 改變文件的所有者
chmod — 改變文件模式
bool chmod ( string $filename , int $mode )
示例:
<?php
chmod('/home/phpha.txt', 0755);
?>
copy — 拷貝文件
if(copy('index.php', 'index.php.bak')){
echo 'copy success';
}
?>
//在當(dāng)前目錄下生存了index.php.bak文件
delete — 參見 unlink 或 unset
unlink — 刪除文件
<?php
if(unlink('index.php.bak')){
echo 'unlink success';
}
?>
//刪除了index.php.bak
disk_free_space — 返回目錄中的可用空間
disk_total_space — 返回一個(gè)目錄的磁盤總大小
diskfreespace — disk_free_space 的別名
<?php
//在 Windows 下:
echo disk_free_space("C:"), '<br />';
echo disk_total_space("C:");
?>
//結(jié)果:返回的是字節(jié)數(shù)
17433419776
32218386432
fopen — 打開文件或者 URL
fgets — 從文件指針中讀取一行
feof — 測試文件指針是否到了文件結(jié)束的位置
fread — 讀取文件(可安全用于二進(jìn)制文件)
fwrite — 寫入文件(可安全用于二進(jìn)制文件)
fclose — 關(guān)閉一個(gè)已打開的文件指針
<?php
$fp = fopen('hello.txt', 'r'); //打開一個(gè)文件
$n = 1;
while(!feof($fp)){
echo $n, ' - ', fgets($fp), '<br />'; //讀取一行并輸出
$n++;
}
fclose($fp); //關(guān)閉文件
?>
//輸出:
1 - Welcome to my blog:
2 - http://chabaoo.cn
fgetc — 從文件指針中讀取字符
fgetcsv — 從文件指針中讀入一行并解析 CSV 字段
fgetss — 從文件指針中讀取一行并過濾掉 HTML 標(biāo)記
fputcsv — 將行格式化為 CSV 并寫入文件指針
fputs — fwrite 的別名
<?php
$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 — 檢查文件或目錄是否存在
<?php
if(file_exists('hello.txt')){
echo 'hello.txt exists';
}else{
echo 'hello.txt not exists';
}
?>
[/code]
//輸出:
hello.txt exists
[/code]
file_get_contents — 將整個(gè)文件讀入一個(gè)字符串
file_put_contents — 將一個(gè)字符串寫入文件
file — 把整個(gè)文件讀入一個(gè)數(shù)組中
<?php
if($content = file_get_contents('hello.txt')){
file_put_contents('hello.txt.bak', $content);
}
?>
//相當(dāng)于copy了一份hello.txt
<?php
if($content = file('hello.txt')){
print_r($content);
}
?>
//數(shù)組形式,每一行是一個(gè)數(shù)組成員
Array
(
[0] => Welcome to my blog:
[1] => http://chabaoo.cn
)
fileatime — 取得文件的上次訪問時(shí)間
filectime — 取得文件的 inode 修改時(shí)間
filegroup — 取得文件的組
fileinode — 取得文件的 inode
filemtime — 取得文件修改時(shí)間
fileowner — 取得文件的所有者
fileperms — 取得文件的權(quán)限
filesize — 取得文件大小
filetype — 取得文件類型
<?php
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 — 將緩沖內(nèi)容輸出到文件
fpassthru — 輸出文件指針處的所有剩余數(shù)據(jù)
fscanf — 從文件中格式化輸入
fseek — 在文件指針中定位
fstat — 通過已打開的文件指針取得文件信息
ftell — 返回文件指針讀/寫的位置
ftruncate — 將文件截?cái)嗟浇o定的長度
glob — 尋找與模式匹配的文件路徑
is_dir — 判斷給定文件名是否是一個(gè)目錄
is_executable — 判斷給定文件名是否可執(zhí)行
is_file — 判斷給定文件名是否為一個(gè)正常的文件
is_link — 判斷給定文件名是否為一個(gè)符號(hào)連接
is_readable — 判斷給定文件名是否可讀
is_uploaded_file — 判斷文件是否是通過 HTTP POST 上傳的
is_writable — 判斷給定的文件名是否可寫
is_writeable — is_writable 的別名
說明:以上函數(shù)都是用來判斷文件或目錄是否符合對(duì)應(yīng)的條件,返回TRUE或FALSE。
lchgrp — Changes group ownership of symlink
lchown — Changes user ownership of symlink
link — 建立一個(gè)硬連接
linkinfo — 獲取一個(gè)連接的信息
lstat — 給出一個(gè)文件或符號(hào)連接的信息
mkdir — 新建目錄
move_uploaded_file — 將上傳的文件移動(dòng)到新位置
parse_ini_file — 解析一個(gè)配置文件
pathinfo — 返回文件路徑的信息
pclose — 關(guān)閉進(jìn)程文件指針
popen — 打開進(jìn)程文件指針
readfile — 輸出一個(gè)文件
readlink — 返回符號(hào)連接指向的目標(biāo)
realpath — 返回規(guī)范化的絕對(duì)路徑名
rename — 重命名一個(gè)文件或目錄
rewind — 倒回文件指針的位置
rmdir — 刪除目錄
set_file_buffer — stream_set_write_buffer 的別名
stat — 給出文件的信息
symlink — 建立符號(hào)連接
tempnam — 建立一個(gè)具有唯一文件名的文件
tmpfile — 建立一個(gè)臨時(shí)文件
touch — 設(shè)定文件的訪問和修改時(shí)間
umask — 改變當(dāng)前的 umask
clearstatcache — 清除文件狀態(tài)緩存
- PHP 文件系統(tǒng)詳解
- PHP文件系統(tǒng)管理(實(shí)例講解)
- php文件系統(tǒng)處理方法小結(jié)
- PHP開發(fā)文件系統(tǒng)實(shí)例講解
- php讀取目錄及子目錄下所有文件名的方法
- PHP中文件讀、寫、刪的操作(PHP中對(duì)文件和目錄操作)
- php遍歷目錄與文件夾的多種方法詳解
- PHP判斷文件是否存在、是否可讀、目錄是否存在的代碼
- php中檢查文件或目錄是否存在的代碼小結(jié)
- PHP 創(chuàng)建文件(文件夾)以及目錄操作代碼
- PHP獲取當(dāng)前文件的父目錄方法匯總
- PHP FileSystem 文件系統(tǒng)常用api整理總結(jié)
相關(guān)文章
使用PHP實(shí)現(xiàn)一個(gè)輕量級(jí)HTML模板引擎
在Web開發(fā)中,我們經(jīng)常需要?jiǎng)討B(tài)生成HTML頁面,為了提高開發(fā)效率和代碼可維護(hù)性,使用模板引擎是一個(gè)非常普遍的方案,本文將介紹如何使用PHP實(shí)現(xiàn)一個(gè)簡單的HTML模板引擎,滿足變量綁定輸出和if判斷的需求,需要的朋友可以參考下2023-08-08詳細(xì)Laravel5.5執(zhí)行表遷移命令出現(xiàn)表為空的解決方案
這篇文章主要介紹了詳細(xì)Laravel5.5執(zhí)行表遷移命令出現(xiàn)表為空的解決方案,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07在Laravel5中正確設(shè)置文件權(quán)限的方法
這篇文章主要給大家介紹了關(guān)于如何在Laravel5中正確設(shè)置文件權(quán)限的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家學(xué)習(xí)或者使用Laravel5具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2019-05-05PHP使用遞歸按層級(jí)查找數(shù)據(jù)的方法
這篇文章主要介紹了PHP使用遞歸按層級(jí)查找數(shù)據(jù)的方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-11-11thinkPHP中_initialize方法實(shí)例分析
這篇文章主要介紹了thinkPHP中_initialize方法,結(jié)合實(shí)例形式分析了子類調(diào)用父類_initialize方法的原理與相關(guān)操作技巧,需要的朋友可以參考下2016-12-12Laravel實(shí)現(xiàn)定時(shí)任務(wù)的示例代碼
本篇文章主要介紹了Laravel實(shí)現(xiàn)定時(shí)任務(wù)的示例代碼,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2017-08-08