摘要:設定位置為文件尾加上。五實例留言板添加寫入鎖及防阻塞釋放寫入鎖及防阻塞寫入鎖定失敗不打開文件讀取,無法加鎖添加讀取鎖及防阻塞釋放讀取鎖及防阻塞讀取鎖定失敗,,用戶名標題內容提交
一、文件操作函數
1.創建文件:touch("./xxx.php");
bool touch ( string $filename [, int $time = time() [, int $atime ]] )
2.復制文件:copy("./xxx.php","./yyy.php");
3.移動或重命名:rename("./xxx.php","./yyy.php");
4.刪除文件:unlink("./xxx.php");
5.截取文件:ftruncate("./xxx.php",$size);
6.文件內容操作:
a.file_get_contents("./xxx.php");獲取文件 b.file_put_contents("./xxx.php","aaa");寫入文件 注:可以遠程讀取文件,如:file_put_contents("./xxx.php",file_get_contents("http://www.baidu.com")); C.讀文件readfile("http://www.baidu.com"); d.$arr=file("./xxx.php"):將文件存為數組,每一行是一個元素
注:以上涉及讀取文件內容的函數無需先打開文件
二、文件的打開與關閉
1.$open=fopen("./xxx.php","r");
resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context ]] )
注:附加Mode:b操作二進制文件時加上,t文本文件
2.fclose($open);
3.fwrite($open,"aaaa");可以更改fopen的mode,改變每次寫入是否覆蓋
4.fgetc($open);一次讀取文件一個字符
5.feof($open);指針到文件結尾返回true,可用作if判斷
6.fgets($open);一次讀取文件一行
7.fread($open,1024);一次讀取指定長度(字節數)的字符
注:以上讀取文件內容必須先打開文件
while(!feof($open)){ echo fgetc($open); echo fgets($open); echo fread($open,filesize($open)); }
三、移動文件的指針
1.ftell($open);返回指針當前位置,默認為開始
2.fseek($open,-4,SEEK_END);將指針移動至某位置,如從文件尾前移4個字節,注意結尾可能有換行符。可以配合fopen的a追加模式更方便的操作
$whence值可以是: ?SEEK_SET - 設定位置等于 offset 字節。 ?SEEK_CUR - 設定位置為當前位置加上 offset。 ?SEEK_END - 設定位置為文件尾加上 offset。
3.rewind($open);將指針放到開頭
四、文件的鎖定機制
1.flock($open,LOCK_SH):讀取/寫入文件時都需要鎖定(LOCK_SH/LOCK_EX),以防止多人同時操作,解鎖時方法相同(LOCK_UN)
注:$handle必須指向一個打開的文件資源
bool flock ( resource $handle , int $operation [, int &$wouldblock ] )
operation 可以是以下值之一: ? LOCK_SH取得共享鎖定(讀取的程序)。 ? LOCK_EX 取得獨占鎖定(寫入的程序。 ? LOCK_UN 釋放鎖定(無論共享或獨占)。
五、實例:留言板
{$username},".date("y-m-d h:i",$time).":{$title},{$content}
"; } fclose($file); } ?>
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/25710.html
摘要:,意為跨網站請求偽造,也有寫為。攻擊者偽造目標用戶的請求,然后此請求發送到有漏洞的網站,網站執行此請求后,引發跨站請求偽造攻擊。 CSRF(Cross Site Request Forgeries),意為跨網站請求偽造,也有寫為XSRF。攻擊者偽造目標用戶的HTTP請求,然后此請求發送到有CSRF漏洞的網站,網站執行此請 求后,引發跨站請求偽造攻擊。攻擊者利用隱蔽的HTTP連接,讓目標...
摘要:用到對數據進行刪除,具體請看的編寫相關姿勢有發送請求字符串模板頁面元素內容賦值請求返回到這,整體結構就完成了。 前言 在對php語法有一定了解之后開始,這是第一個php練手項目,涵蓋的知識有 公共部分的引用 表單的提交 請求的接收與響應 interface+implements的使用 基于文件的所處理的增刪改查 json的格式化與字符串序列化 項目地址message boardps...
摘要:二面向對象有什么特征面向對象的主要特征有抽象繼承封裝和多態。析構函數析構函數是在引入的,它的作用與調用時機和構造函數剛好相反,它在對象被銷毀時自動執行。 PHP面試專欄正式起更,每周一、三、五更新,提供最好最優質的PHP面試內容。PHP中面向對象常考的知識點有以下7點,我將會從以下幾點進行詳細介紹說明,幫助你更好的應對PHP面試常考的面向對象相關的知識點和考題。整個面向對象文章的結構涉...
摘要:繼周一發布的面試常考內容之和后,這是第二篇,感謝你的支持和閱讀。預告面試常考內容之和將于本周五更新。以上內容摘自程序員面試筆試寶典書籍,該書已在天貓京東當當等電商平臺銷售。 你好,是我琉憶。繼周一(2019.2-18)發布的PHP面試常考內容之Memcache和Redis(1)后,這是第二篇,感謝你的支持和閱讀。本周(2019.2-18至2-22)的文章內容點為以下幾點,更新時間為每周...
摘要:繼周一發布的面試常考內容之和后,這是第二篇,感謝你的支持和閱讀。預告面試常考內容之和將于本周五更新。以上內容摘自程序員面試筆試寶典書籍,該書已在天貓京東當當等電商平臺銷售。 你好,是我琉憶。繼周一(2019.2-18)發布的PHP面試常考內容之Memcache和Redis(1)后,這是第二篇,感謝你的支持和閱讀。本周(2019.2-18至2-22)的文章內容點為以下幾點,更新時間為每周...
閱讀 955·2019-08-30 14:24
閱讀 987·2019-08-30 14:13
閱讀 1799·2019-08-29 17:21
閱讀 2661·2019-08-29 13:44
閱讀 1654·2019-08-29 11:04
閱讀 438·2019-08-26 10:44
閱讀 2564·2019-08-23 14:04
閱讀 908·2019-08-23 12:08