溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

PHP SPL標(biāo)準(zhǔn)庫的文件操作方法

發(fā)布時(shí)間:2021-06-30 15:43:25 來源:億速云 閱讀:183 作者:chen 欄目:開發(fā)技術(shù)

這篇文章主要介紹“PHP SPL標(biāo)準(zhǔn)庫的文件操作方法”,在日常操作中,相信很多人在PHP SPL標(biāo)準(zhǔn)庫的文件操作方法問題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”PHP SPL標(biāo)準(zhǔn)庫的文件操作方法”的疑惑有所幫助!接下來,請(qǐng)跟著小編一起來學(xué)習(xí)吧!

PHP SPL中提供了SplFileInfo和SplFileObject兩個(gè)類來處理文件操作。

SplFileInfo用來獲取文件詳細(xì)信息:

復(fù)制代碼 代碼如下:


$file = new SplFileInfo('foo-bar.txt');
 
print_r(array(
    'getATime' => $file->getATime(), //最后訪問時(shí)間
    'getBasename' => $file->getBasename(), //獲取無路徑的basename
    'getCTime' => $file->getCTime(), //獲取inode修改時(shí)間
    'getExtension' => $file->getExtension(), //文件擴(kuò)展名
    'getFilename' => $file->getFilename(), //獲取文件名
    'getGroup' => $file->getGroup(), //獲取文件組
    'getInode' => $file->getInode(), //獲取文件inode
    'getLinkTarget' => $file->getLinkTarget(), //獲取文件鏈接目標(biāo)文件
    'getMTime' => $file->getMTime(), //獲取最后修改時(shí)間
    'getOwner' => $file->getOwner(), //文件擁有者
    'getPath' => $file->getPath(), //不帶文件名的文件路徑
    'getPathInfo' => $file->getPathInfo(), //上級(jí)路徑的SplFileInfo對(duì)象
    'getPathname' => $file->getPathname(), //全路徑
    'getPerms' => $file->getPerms(), //文件權(quán)限
    'getRealPath' => $file->getRealPath(), //文件絕對(duì)路徑
    'getSize' => $file->getSize(),//文件大小,單位字節(jié)
    'getType' => $file->getType(),//文件類型 file  dir  link
    'isDir' => $file->isDir(), //是否是目錄
    'isFile' => $file->isFile(), //是否是文件
    'isLink' => $file->isLink(), //是否是快捷鏈接
    'isExecutable' => $file->isExecutable(), //是否可執(zhí)行
    'isReadable' => $file->isReadable(), //是否可讀
    'isWritable' => $file->isWritable(), //是否可寫
));

SplFileObject繼承SplFileInfo并實(shí)現(xiàn)RecursiveIterator , SeekableIterator接口 ,用于對(duì)文件遍歷、查找、操作

遍歷:

復(fù)制代碼 代碼如下:


try {
    foreach(new SplFileObject('foo-bar.txt') as $line) {
        echo $line;
    }
} catch (Exception $e) {
    echo $e->getMessage();
}


查找指定行:

復(fù)制代碼 代碼如下:


try {
    $file = new SplFileObject('foo-bar.txt');
    $file->seek(2);
    echo $file->current();
} catch (Exception $e) {
    echo $e->getMessage();
}


寫入csv文件:

復(fù)制代碼 代碼如下:


$list  = array (
    array( 'aaa' ,  'bbb' ,  'ccc' ,  'dddd' ),
    array( '123' ,  '456' ,  '7891' ),
    array( '"aaa"' ,  '"bbb"' )
);
 
$file  = new  SplFileObject ( 'file.csv' ,  'w' );
 
foreach ( $list  as  $fields ) {
    $file -> fputcsv ( $fields );
}

到此,關(guān)于“PHP SPL標(biāo)準(zhǔn)庫的文件操作方法”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注億速云網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI