PHP 第九周函式學習記錄

zerocoder發表於2020-08-17

mkdir()

作用

mkdir() 函式建立目錄。
如果成功該函式返回 TRUE,如果失敗則返回 FALSE

用法

mkdir(path,mode,recursive,context)
path    必需。規定要建立的目錄的名稱。
mode    可選。規定許可權。預設是 0777(允許全域性訪問)。
        mode   引數由四個數字組成:
        第一個數字通常是 0
        第二個數字規定所有者的許可權
        第三個數字規定所有者所屬的使用者組的許可權
        第四個數字規定其他所有人的許可權
        可能的值(如需設定多個許可權,請對下面的數字進行總計):
        1 = 執行許可權
        2 = 寫許可權
        4 = 讀許可權
recursive    可選。規定是否設定遞迴模式。(PHP 5 中新增的)
context    可選。規定檔案控制程式碼的環境。context 是一套可以修改流的行為的選項。(PHP 5 中新增的)

move_uploaded_file()

作用

move_uploaded_file() 函式把上傳的檔案移動到新位置。
如果成功該函式返回 TRUE,如果失敗則返回 FALSE

用法

move_uploaded_file(file,newloc)
file    必需。規定要移動的檔案。
newloc    必需。規定檔案的新位置。

提示和註釋

註釋:該函式僅用於通過 HTTP POST 上傳的檔案。
註釋:如果目標檔案已經存在,將會被覆蓋。

parse_ini_file()

作用

parse_ini_file() 函式解析一個配置檔案(ini 檔案),並以陣列的形式返回其中的設定。

用法

parse_ini_file(file,process_sections)
file    必需。規定要檢查的 ini 檔案。
process_sections    可選。如果設定為 TRUE,則返回一個多維陣列,包括了配置檔案中每一節的名稱和設定。預設是 FALSE

提示和註釋

提示:本函式可以用來讀取您自己的應用程式的配置檔案,與 php.ini 檔案沒有關係。

註釋:有些保留字不能作為 ini 檔案中的鍵名,包括:null、yes、no、truefalse。字元 {}|&~![()" 也不能用在鍵名的任何地方

案例

// "test.ini" 的內容:
[names]
me = Robert
you = Peter

[urls]
first = "http://www.example.com"
second = "https://www.runoob.com"

// PHP 程式碼
<?php
print_r(parse_ini_file("test.ini"));
?>

結果

Array
(
    [me] => Robert
    [you] => Peter
    [first] => http://www.example.com
    [second] => https://www.runoob.com
)

pathinfo()

作用

pathinfo() 函式以陣列的形式返回關於檔案路徑的資訊。
返回的陣列元素如下:
    [dirname]: 目錄路徑
    [basename]: 檔名
    [extension]: 檔案字尾名
    [filename]: 不包含字尾的檔名

用法

pathinfo(path,options)
path    必需。規定要檢查的路徑。
options    可選。規定要返回的陣列元素。預設是 all。
可能的值:
    PATHINFO_DIRNAME - 只返回 dirname
    PATHINFO_BASENAME - 只返回 basename
    PATHINFO_EXTENSION - 只返回 extension
    PATHINFO_FILENAME - 只返回 filename

提示和註釋

註釋:如果不是請求所有的元素,則 pathinfo() 函式返回字串。

案例

<?php
print_r(pathinfo("/testweb/test.txt"));
?>

結果

Array
(
    [dirname] => /testweb
    [basename] => test.txt
    [extension] => txt
    [filename] => test
)

pclose()

作用

pclose() 函式關閉由 popen() 開啟的程式。
如果失敗,該函式返回 FALSE

用法

pclose(pipe)
pipe    必需。規定由 popen() 開啟的程式。

案例

<?php
$file = popen("/bin/ls","r");
//some code to be executed
pclose($file);
?>

popen()

作用

popen() 函式使用 command 引數開啟程式檔案指標。
如果出錯,該函式返回 FALSE

用法

popen(command,mode)
command    必需。規定要執行的命令。
mode    必需。規定連線模式。
        可能的值:
            r: 只讀。
            w: 只寫(開啟並清空已有檔案或建立一個新檔案)

案例

<?php
$file = popen("/bin/ls","r");
//some code to be executed
pclose($file);
?>

readfile()

作用

readfile() 函式讀取一個檔案,並寫入到輸出緩衝。

如果成功,該函式返回從檔案中讀入的位元組數。如果失敗,該函式返回 FALSE 並附帶錯誤資訊。您可以通過在函式名前面新增一個 '@' 來隱藏錯誤輸出。

用法

readfile(filename,include_path,context)

filename        必需。規定要讀取的檔案。
include_path    可選。如果您還想在 include_path(在 php.ini 中)中搜尋檔案的話,請設定該引數為 '1'。
context            可選。規定檔案控制程式碼的環境。context 是一套可以修改流的行為的選項。

案例

<?php
echo readfile("test.txt");
?>

結果

There are two lines in this file.
This is the last line.
57

readlink()

作用

readlink() 函式返回符號連線的目標。

如果成功,該函式返回連線的目標。如果失敗,則返回 FALSE

用法

readlink(linkpath)

案例

<?php
echo readlink("/user/testlink");
?>

realpath()

作用

realpath() 函式返回絕對路徑。

該函式刪除所有符號連線(比如 '/./', '/../' 以及多餘的 '/'),並返回絕對路徑名。

如果失敗,該函式返回 FALSE

用法

realpath(path)

案例

<?php
echo realpath("test.txt");
?>

結果

C:Inetpubtestwebtest.txt

rename()

作用

rename() 函式重新命名檔案或目錄。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

rename(oldname,newname,context)

案例

<?php
rename("images","pictures");
?>

rewind()

作用

rewind() 函式將檔案指標的位置倒回檔案的開頭。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

rewind(file)

案例

<?php
$file = fopen("test.txt","r");

//Change position of file pointer
fseek($file,"15");

//Set file pointer to 0
rewind($file);

fclose($file);
?>

rmdir()

作用

rmdir() 函式刪除空的目錄。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

rmdir(dir,context)

案例

<?php
$path = "images";
if(!rmdir($path))
{
    echo ("Could not remove $path");
}
?>

set_file_buffer()

作用

set_file_buffer() 函式設定開啟檔案的緩衝大小。

使用 fwrite() 函式輸出結果,緩衝的大小通常為 8K。因此,如果要將兩個程式寫入同一個檔案,那麼每個檔案一次最多隻能寫進 8K 大小,且允許其他程式寫入。如果 buffer 為 0,那麼將不對寫入操作進行緩衝(這意味著:只有在第一個寫入程式全部完成之後,才能允許其他程式寫入)。

如果成功,該函式返回 0,否則返回 EOF

用法

set_file_buffer(file,buffer)

案例

// 建立無緩衝的流
<?php
$file = fopen("test.txt","w");
if ($file)
{
set_file_buffer($file,0);
fwrite($file,"Hello World. Testing!");
fclose($file);
}
?>

stat()

作用

stat() 函式返回關於檔案的資訊。

該函式將返回一個包含下列元素的陣列:
    [0][dev] - 裝置編號
    [1][ino] - inode 編號
    [2][mode] - inode 保護模式
    [3][nlink] - 連線數目
    [4][uid] - 所有者的使用者 ID
    [5][gid] - 所有者的組 ID
    [6][rdev] - inode 裝置型別
    [7][size] - 檔案大小的位元組數
    [8][atime] - 上次訪問時間(Unix 時間戳)
    [9][mtime] - 上次修改時間(Unix 時間戳)
    [10][ctime] - 上次 inode 改變時間(Unix 時間戳)
    [11][blksize] - 檔案系統 IO 的塊大小(如果支援)
    [12][blocks] - 所佔據塊的數目

用法

stat(filename)

案例

<?php
$stat = stat('test.txt');
echo 'Acces time: ' .$stat['atime'];
echo '<br />Modification time: ' .$stat['mtime'];
echo '<br />Device number: ' .$stat['dev'];
?>

結果

Access time: 1141633430
Modification time: 1141298003
Device number: 0

symlink()

作用

symlink() 函式建立一個從指定名稱連線的現存目標檔案開始的符號連線。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

symlink(target,link)

提示和註釋

註釋:這不是一個 HTML 連線,而是一個檔案系統中的連線。

註釋:該函式不能在 Windows 平臺上執行。

tempnam()

作用

tempnam() 函式在指定的目錄中建立一個具有唯一檔名的臨時檔案。

該函式返回新的臨時檔名,如果失敗則返回 FALSE

用法

tempnam(dir,prefix)

dir        必需。規定建立臨時檔案的目錄。
prefix    必需。規定檔名的開頭。

提示和註釋

註釋:如果指定的目錄不存在,那麼 tempnam() 會在系統的臨時目錄中生成一個檔案。

提示:參見 tmpfile()

案例

<?php
echo tempnam("C:inetpubtestweb","TMP0");
?>

結果

C:inetpubtestwebTMP1.tmp

tmpfile()

作用

tmpfile() 函式以讀寫(w+)模式建立一個具有唯一檔名的臨時檔案。

用法

tmpfile()

提示和註釋

註釋:臨時檔案會在檔案關閉後(用 fclose())或當指令碼結束後自動被刪除。

案例

<?php
$temp = tmpfile();

fwrite($temp, "Testing, testing.");
//Rewind to the start of file
rewind($temp);
//Read 1k from file
echo fread($temp,1024);

//This removes the file
fclose($temp);
?>

結果

Testing, testing.

touch()

作用

touch() 函式設定指定檔案的訪問和修改時間。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

touch(filename,time,atime)
filename    必需。規定要接觸的檔案。
time    可選。設定時間。預設設定為當前系統時間。
atime    可選。設定訪問時間。如果引數未設定或設定為與 time 引數相同,則預設設定為當前系統時間。

提示和註釋

註釋:如果指定的檔案不存在,則會被建立。

案例

<?php
touch("test.txt");
?>

umask()

作用

umask() 函式改變檔案的檔案許可權。
該函式把 PHP 的 umask 設定為 mask & 0777 並返回原來的 umask。然而,如果您呼叫 umask() 時不帶引數,則會返回當前的 umask。

用法

umask(mask)

mask    可選。規定新的許可權。預設是 0777。
        mask 引數由四個數字組成:
            第一個數字通常是 0
            第二個數字規定所有者的許可權
            第三個數字規定所有者所屬的使用者組的許可權
            第四個數字規定其他所有人的許可權
            可能的值(如需設定多個許可權,請對下面的數字進行總計):
                1 = 執行許可權
                2 = 寫許可權
                4 = 讀許可權

unlink()

作用

unlink() 函式刪除檔案。

如果成功,該函式返回 TRUE。如果失敗,則返回 FALSE

用法

unlink(filename,context)

filename    必需。規定要刪除的檔案。
context    可選。規定檔案控制程式碼的環境。context 是一套可以修改流的行為的選項。

例項

<?php
$file = "test.txt";
if (!unlink($file)) {
    echo ("Error deleting $file");
} else {
    echo ("Deleted $file");
}
?>

來源

PHP 5 Filesystem 函式 | 菜鳥教程

本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章