3 按路徑讀檔案 PHP檔案上傳

2021-10-14 12:31:27 字數 3593 閱讀 4036

檔案系統處理的作用:

1. 所有的專案離不開檔案處理

2. 可以用檔案長時間儲存資料

3. 建立快取, 伺服器中檔案操作

檔案處理

以linux為模型的, 在windows只能獲取file, dir或unknow 三種型別

在linux/unix下, block, char, dir, fifo, file, link, unknown和種型

block :塊設定檔案,磁碟分割槽,軟碟機, cd-rom等

char: 字元裝置,i/o 以字元為單位, 鍵盤,印表機等

dir: 目錄也是檔案的一種

fifo:

file:

link:

unknown

filetype("目錄或檔名")

is_array();

is_int();

is_string();

is_null;

is_bool();

is_dir -- 判斷給定檔名是否是乙個目錄

is_executable -- 判斷給定檔名是否可執行

is_file -- 判斷給定檔名是否為乙個正常的檔案

is_link -- 判斷給定檔名是否為乙個符號連線

is_readable -- 判斷給定檔名是否可讀

is_uploaded_file -- 判斷檔案是否是通過 http post 上傳的

is_writable -- 判斷給定的檔名是否可寫

is_writeable -- is_writable() 的別名

file_exists();

filesize();

is_readable();

is_writeable();

filectime();

filemtime();

fileactime();

stat();

相對路徑:相對於當前目錄的上級和下級目錄

. 當前目錄

.. 上一級目錄

./php/apache/index.php

php/apahce/index.php

login.php

./login.php

../images/tpl/logo.gif

路徑分隔符號

linux/unix "/"

windows ""

directory_separator 為不同平台,在windows linux /

不管是什麼作業系統php的目錄分割符號都支技 / (linux)

在php和apache配置檔案中如果需要指定目錄,也使用/作為目錄符號

絕對路徑:

/ 根路徑

/images/index.php

指的作業系統的根

指的是存放**的文件根目錄

分情況如果是在伺服器中執行(通過php檔案處理函式執行)路徑 則 「根」指的就是作業系統的根

basename(url)

dirname(url)

pathinfo(url)

建立檔案 touch("檔名")

刪除檔案 unlink("檔案路徑");

移動檔案 為檔案重新命名 rename("當前檔案路徑", 「目錄為檔案路徑」)

複製檔案 copy("當前", 「目標」);

一定要有php執行這個檔案許可權, apache, 乙個使用者

和許可權設計有關的函式

ls -l 或 ll

_rwxrwxrwx 777

_ 型別 _檔案 d 表示是目錄 l b

rwx 表這個檔案的擁有者 r讀 w寫 x執行

rwx 表這個檔案的擁有者所在的組 r讀 w寫 x執行

rwx 其它使用者對這個為檔案的許可權 r讀 w寫 x執行

r 4w 2

x 1

7 7 7 4+2+1 4+2+1 4+2+1

rwx rwx rwx

4+2 4 4

rw_ r__ r__

chmod u=rwx,g=rw,o=x

chmod 777 demo.php

chmod 644 demo.html

chown mysql demo.php

chgrp apache demo.php

chgrp -- 改變檔案所屬的組

chmod -- 改變檔案模式

chown -- 改變檔案的所有者

filegroup -- 取得檔案的組

fileowner -- 取得檔案的所有者

讀取檔案中的內容

file_get_contents(); //php5以上

file()

readfile();

不足:全部讀取, 不能讀取部分,也不能指定的區域

fopen(url, mode)

本地檔案:

./test.txt

/usr/local/apahce/index.html

遠端:fopen("./test.txt", "a+")

fwrite fread

r , 以唯讀模式開啟檔案

r+ 寫

w, 以只寫的方式開啟,如果檔案不存在,則建立這個檔案,並寫放內容,如果檔案存在,並原來有內容,則會清除原檔案中所有內容,再寫入(開啟已有的重要檔案)

w+ 除了可以寫用fwrite, 還可以讀fread

a 以只寫的方式開啟,如果檔案不存在,則建立這個檔案,並寫放內容,如果檔案存在,並原來有內容,則不清除原有檔案內容,再原有檔案內容的最後寫入新內容,(追加)

a+除了可以寫用fwrite, 還可以讀fread

b 以二進位制模式開啟檔案(圖,電影)

t 以文字模式開啟檔案

fread() // 第乙個是讀取指定長度的字元

fgetc() //一次從檔案中讀取乙個字元

fgets() //一次從檔案中讀取一行字元

feof($file); 如果讀取檔案出錯,或到檔案結束,則返回真

寫入檔案

file_put_contents(「url」, 「內容字串」); //php5以上

如果檔案不存在,則建立,並寫入內容

如果檔案存在,則刪除檔案中的內容,重新寫放

不足: 不能以追加的方式寫,也不能加鎖

fopen()

fwrite() 別名 fputs

第乙個引數是檔案資源(fopen返回來的),第個引數是寫的內容

本地檔案:

./test.txt

/usr/local/apahce/index.html

遠端:ftell($file) //返回當前檔案針的位置

fseek($file, 10);

fread();

rewind();

目錄的處理

opendir()

readdir()

closedir()

rewinddir()

建立目錄

mkdir(); //建立乙個空目錄

刪除目錄

rmdir(); //只可以刪除空目錄

php mysql上傳檔案 PHP 檔案上傳

通過 php,可以把檔案上傳到伺服器。建立乙個檔案上傳表單 允許使用者從表單上傳檔案是非常有用的。請看下面這個供上傳檔案的 html 表單 芝麻教程 web3.xin 檔名 將以上 儲存到 form.html 檔案中。有關上面的 html 表單的一些注意項列舉如下 標籤的 enctype 屬性規定了...

Python按行讀檔案

1.最基本的讀檔案方法 file readline example 1.py file open sample.txt while 1 line file.readline if not line break pass do something 一行一行得從檔案讀資料,顯然比較慢 不過很省記憶體。在...

Python按行讀檔案

1.最基本的讀檔案方法 file readline example 1.py file open sample.txt while 1 line file.readline if not line break pass do something 一行一行得從檔案讀資料,顯然比較慢 不過很省記憶體。在...