W3Cschool
恭喜您成為首批注冊用戶
獲得88經(jīng)驗值獎勵
CodeIgniter提供了一個文件類,它將提供 SplFileInfo class 方法和一些額外的便利方法.這個類是 uploaded files 的基類 和 images.
通過傳遞構造函數(shù)中文件的路徑來創(chuàng)建新的文件實例。默認情況下,文件不需要存在。但是您可以傳遞一個附加參數(shù) “true” ,以檢查該文件是否存在,并在不存在的情況下拋出 FileNotFoundException()
的異常提示.
$file = new \CodeIgniter\Files\File($path);
一旦你有一個實例,你就可以完成 SplFileInfo 類的全部功能,包括:
echo $file->getBasename(); // 獲取文件的基本名稱
echo $file->getMTime(); // 獲取上次修改的時間
echo $file->getRealpath(); // 獲取真正的實際路徑
echo $file->getPerms(); // 獲取文件權限
if ($file->isWritable()) // 向CSV中寫入幾行數(shù)據(jù).
{
$csv = $file->openFile('w');
foreach ($rows as $row)
{
$csv->fputcsv($row);
}
}
除了 SplFileInfo 類中的所有方法之外,還有一些新的方法.
getRandomName()
您可以生成一個加密安全的隨機文件名,其中包含當前時間戳, getRandomName()
方法在移動文件時重命名文件很有用:
$newName = $file->getRandomName(); // 例如: 1465965676_385e33f741.jpg
getSize()
返回上傳文件的大小(以字節(jié)為單位).可以將 ‘kb’ 或 ‘mb’ 作為第一個參數(shù)傳入方法, 將分別返回千字節(jié)和兆字節(jié)的結果:
$bytes = $file->getSize(); // 256901
$kilobytes = $file->getSize('kb'); // 250.880
$megabytes = $file->getSize('mb'); // 0.245
getMimeType()
盡可能在確定文件安全的前提下,使用該方法獲取文件的類型:
$type = $file->getMimeType();
echo $type; // image/png
guessExtension()
使用 getMimeType()
方法確定文件擴展名時.如果文件類型未知,將返回 null . guessExtension()
比使用 getMimeType()
來獲取擴展名功能強一點.可以配置 application/Config/Mimes.php 中的配置文件來獲取文件擴展名:
$ext = $file->guessExtension(); // 例如:返回圖片類型 'jpg' (沒有句點'.')
每個文件可以使用 move()
方法移動到新的位置.指定文件的目錄作作為 該方法的第一個參數(shù):
$file->move(WRITEPATH.'uploads');
默認情況下,使用原始文件名.您可以通過第二個參數(shù)重命名你要移動的文件:
$newName = $file->getRandomName();
$file->move(WRITEPATH.'uploads', $newName);
Copyright©2021 w3cschool編程獅|閩ICP備15016281號-3|閩公網(wǎng)安備35020302033924號
違法和不良信息舉報電話:173-0602-2364|舉報郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號
聯(lián)系方式:
更多建議: