国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

首頁 php教程 php手冊 PHP學(xué)習(xí)文件處理與文件上傳 課件第1/2頁

PHP學(xué)習(xí)文件處理與文件上傳 課件第1/2頁

Jun 13, 2016 pm 12:28 PM
php 上傳 處理 學(xué)習(xí) 文件 伺服器 相關(guān)

????PHP對文件的處理
PHP?在服務(wù)器端文件的應(yīng)用上,相關(guān)的范疇不僅僅在于用戶與服務(wù)器資料庫間的各種連接存取操作,也可以通過?PHP?內(nèi)建的文件處理函數(shù),來進行一般文件處理操作。

basename?--?返回路徑中的文件名部分
語法格式:$path?=?"/home/httpd/html/index.php";
??$file?=?basename($path);????????//?$file?is?set?to?"index.php"
??$file?=?basename($path,".php");?//?$file?is?set?to?"index"

pathinfo():分析文件當(dāng)前路徑
語法格式:$path_parts?=?pathinfo("/www/htdocs/index.html");
??echo?$path_parts["dirname"]?.?"\n";??/www/htdocs??文件路徑
??echo?$path_parts["basename"]?.?"\n";??index.html??文件與擴展名
??echo?$path_parts["extension"]?.?"\n";??html????文件格式

????文件類型與相關(guān)信息
filesize():計算文件的大?。╞yte)
語法格式:$bytes=filesize(“a.txt”);
??echo?$bytes?????round($bytes/1024,2);
fileatime():文件最后一次訪問時間(時間戳)
語法格式:echo?date(“Y-m-d?g:i:sa”,fileatime);
filectime():文件建立時間
語法格式:echo?date(“Y-m-d?g:i:sa”,filectime);
filemtime():文件最后一次更新時間
語法格式:echo?date(“Y-m-d?g:i:sa”,filemtime);
fileperms():文件屬性以及權(quán)限10進制
語法格式:echo?substr(base_convert(fileperms(a.txt),10,8),3);
fileowner():文件所有者的uid(僅在Linux系統(tǒng)下有用)
語法格式:echo?fileowner(“a.txt”);

????文件的操作
'r'?只讀方式打開,將文件指針指向文件頭。??
'r+'?讀寫方式打開,將文件指針指向文件頭。??
'w'?寫入方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。??
'w+'?讀寫方式打開,將文件指針指向文件頭并將文件大小截為零。如果文件不存在則嘗試創(chuàng)建之。??
'a'?寫入方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。??
'a+'?讀寫方式打開,將文件指針指向文件末尾。如果文件不存在則嘗試創(chuàng)建之。??

'x'???創(chuàng)建并以寫入方式打開,將文件指針指向文件頭。如果文件已存在,則?fopen()?調(diào)用失敗并返回?FALSE,并生成一條?E_WARNING?級別的錯誤信息。如果文件不存在則嘗試創(chuàng)建之。這和給?底層的?open(2)?系統(tǒng)調(diào)用指定?O_EXCL|O_CREAT?標(biāo)記是等價的。此選項被?PHP?4.3.2?以及以后的版本所支持,僅能用于本地文件。??
'x+'???創(chuàng)建并以讀寫方式打開,將文件指針指向文件頭。如果文件已存在,則?fopen()?調(diào)用失敗并返回?FALSE,并生成一條?E_WARNING?級別的錯誤信息。如果文件不存在則嘗試創(chuàng)建之。這和給?底層的?open(2)?系統(tǒng)調(diào)用指定?O_EXCL|O_CREAT?標(biāo)記是等價的。此選項被?PHP?4.3.2?以及以后的版本所支持,僅能用于本地文件。??

fopen()?--?打開文件或者?URL??
fclose()?--?關(guān)閉一個已打開的文件指針
fread()?--?讀取文件內(nèi)容
fwrite()--寫入文件
語法格式:if(!$f=@fopen("file03.php","x")){//打開一個文件?x方法寫入
????die("文件讀取失敗");????//讀取失敗
??}
??fwrite($f,"kkkkkkkkkk");??//向那個文件寫??寫什么
??echo?fread($f,10);????//讀取這個文件的內(nèi)容
??fclose($f);??????關(guān)閉打開文件


file()?--?把整個文件讀入一個數(shù)組中
語法格式:$arr=file("file03.php");
??print_r($arr);?//讀取文件返回數(shù)組

readfile()?--讀入一個文件并寫入到輸出緩沖。?
語法格式:$str=readfile("file03.php");
??echo?$str;??輸出

一個文件記數(shù)器的寫法:
$f=fopen("file03.php","r");
??$i=fread($f,1000);
??echo?"這是您第{$i}次訪問";
??fclose($f);
??$f=fopen("file03.php","w");??
??$i++;
??fwrite($f,$i);
??fclose($f);
````````````````````````````````````````
file_get_contents()?–?將整個文件讀入一個字符串
語法格式:file_get_contents(文件名稱或URL)

file_put_contents()?–?將一個字符串寫入文件,和依次調(diào)用?fopen(),fwrite()?以及?fclose()?功能一樣
file_put_contents(文件名稱,寫入數(shù)據(jù))


feof()?--?測試文件指針是否到了文件結(jié)束的位置
ftell()?--?返回文件指針讀/寫的位置
語法格式ftell(文件指針)
flock()?--?輕便的咨詢文件鎖定
語法格式:flock(文件指針,控制參數(shù))
文件指針:是一個已經(jīng)打開(fopen)的文件指針控制參數(shù):
“LOCK_SH”表示要取得共享鎖定(讀取程序),(PHP4.0.1以前版本設(shè)置1)。?
“LOCK_EX”表示要取得獨占鎖定(寫入程序),(PHP4.0.1以前版本中設(shè)置為?2)。?
“LOCK_UN”表示要釋放鎖定(無論共享或獨占),(PHP4.0.1以前版本中設(shè)置為?3)。?
“LOCK_NB”表示如果你不希望?flock()?在鎖定時堵塞,則給控制參數(shù)再加上這個參數(shù)

fseek(?)?--?在文件指針中定位
語法結(jié)構(gòu):??fseek(文件指針,移動字元數(shù)?[,起始位置常數(shù)])
文件指針:不能用于在?fopen()?中以?“http://”?或?“ftp://”?格式打開所返回的文件指針。
移動字元數(shù):為正數(shù)時,將文件指針向前移動指定個數(shù):為負數(shù)時,將文件指針向后移動指定個數(shù):
起始位置常數(shù):?
SEEK_CUR?-?設(shè)定位置為當(dāng)前位置。?
SEEK_SET?-?設(shè)定位置等于文件開頭。(默認值)
SEEK_END?-?設(shè)定位置為文件尾。


rewind(?)?--?倒回文件指針的位置,也就是將文件指針移向文件的開頭位置。?
語法結(jié)構(gòu):??rewind(文件指針)
注意:如果將文件以附加(“a”?或者?“a+”)模式打開,寫入文件的任何數(shù)據(jù)總是會被附加在后面,不管文件指針的位置

chgrp(?)?--?改變文件所屬的組
??語法結(jié)構(gòu):chgrp(文件名稱,群組名稱)

filegroup(?)?--?取得文件的組
??語法結(jié)構(gòu):filegroup(文件名稱)

chmod(?)?--?改變文件模式
??語法結(jié)構(gòu):chmod(文件名稱,權(quán)限常數(shù))755??666

chown(?)?--?改變文件的所有者
??語法結(jié)構(gòu):chown(文件名稱,使用者)

fileowner(?)?--?取得文件的所有者
??語法結(jié)構(gòu):fileowner(文件名稱)
posix_getpwuid()?來將其解析為用戶名。



??copy(?)?--?拷貝文件
??語法結(jié)構(gòu):copy(來源文件,目的文件)
??返回類型:bool型,如果成功則返回?TRUE,失敗則返回?FALSE。
??參數(shù)說明:將來源文件拷貝到目的文件。
??unlink(?)?--?刪除文件
??語法結(jié)構(gòu):unlink(目標(biāo)文件)
??返回類型:bool型,如果成功則返回?TRUE,失敗則返回?FALSE。
??參數(shù)說明:刪除指定的目標(biāo)文件
??rename(?)?--?重命名一個文件或目錄
??語法結(jié)構(gòu):rename(舊文件名,新文件名)
??返回類型:bool型,如果成功則返回?TRUE,失敗則返回?FALSE。
??參數(shù)說明:嘗試把舊文件名重命名為新文件名。

文件屬性處理
file_exists(?)?--?檢查文件或目錄是否存在
??語法結(jié)構(gòu):file_exists(文件名稱)
??返回類型:bool型,若存在返回?true,否則返回?false。
filesize(?)?--?取得文件大小
??語法結(jié)構(gòu):filesize(文件名稱)
??返回類型:返回文件大小字節(jié)數(shù),若出錯返回?false.
filetype(?)?--?取得文件類型
???語法結(jié)構(gòu):filetype(文件名稱)
???返回類型:返回文件類型??赡艿闹涤?fifo,char,dir,block,link,file?和?unknown。?出錯則返回?false
is_dir(?)?--?判斷給定文件名是否是一個目錄
??語法結(jié)構(gòu):is_dir(名稱)
??返回類型:如果文件名存在并且是一個目錄則返回?true,否則返回?false。
is_executable(?)?--?判斷給定文件名是否可執(zhí)行
???語法結(jié)構(gòu):is_executable(名稱)
????返回類型:如果文件存在且可執(zhí)行則返回?TRUE,否則返回?FALSE。??
is_file(?)?--?判斷給定文件名是否為一個正常的文件
??語法結(jié)構(gòu):is_file(名稱)??
??返回類型:如果文件存在且為正常的文件則返回?TRUE。
is_link(?)?--?判斷給定文件名是否為一個符號連接
??語法結(jié)構(gòu):is_link(名稱)???
??返回類型:如果文件存在并且是一個符號連接則返回?true。
is_readable(?)?--?判斷給定文件名是否可讀
??語法結(jié)構(gòu):is_readable(文件名稱)??
??返回類型:如果文件存在并且可讀則返回?TRUE。
is_writable(?)?--?判斷給定的文件名是否可寫
??語法結(jié)構(gòu):is_writable(文件名稱)??
??返回類型:如果文件存在并且可寫則返回?TRUE。


????實現(xiàn)iterator接口的目錄讀取
Iterator接口的標(biāo)準(zhǔn)方法
current():返回當(dāng)前列表(list)中的元素值。
next():用于在一個列表中向下移動一個位置。
valid():檢測在當(dāng)前列表中是否還有下一個元素,如果有,返回true,否則返回false。
rewind():可以訪問指定特征的元素列表,在開始操作iterator時,會將指針設(shè)置在頂部。

本網(wǎng)站聲明
本文內(nèi)容由網(wǎng)友自願投稿,版權(quán)歸原作者所有。本站不承擔(dān)相應(yīng)的法律責(zé)任。如發(fā)現(xiàn)涉嫌抄襲或侵權(quán)的內(nèi)容,請聯(lián)絡(luò)admin@php.cn

熱AI工具

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅(qū)動的應(yīng)用程序,用於創(chuàng)建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發(fā)環(huán)境

Dreamweaver CS6

Dreamweaver CS6

視覺化網(wǎng)頁開發(fā)工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

我如何了解最新的PHP開發(fā)和最佳實踐? 我如何了解最新的PHP開發(fā)和最佳實踐? Jun 23, 2025 am 12:56 AM

TostaycurrentwithPHPdevelopmentsandbestpractices,followkeynewssourceslikePHP.netandPHPWeekly,engagewithcommunitiesonforumsandconferences,keeptoolingupdatedandgraduallyadoptnewfeatures,andreadorcontributetoopensourceprojects.First,followreliablesource

什麼是PHP,為什麼它用於Web開發(fā)? 什麼是PHP,為什麼它用於Web開發(fā)? Jun 23, 2025 am 12:55 AM

PHPbecamepopularforwebdevelopmentduetoitseaseoflearning,seamlessintegrationwithHTML,widespreadhostingsupport,andalargeecosystemincludingframeworkslikeLaravelandCMSplatformslikeWordPress.Itexcelsinhandlingformsubmissions,managingusersessions,interacti

如何設(shè)置PHP時區(qū)? 如何設(shè)置PHP時區(qū)? Jun 25, 2025 am 01:00 AM

tosetTherightTimeZoneInphp,restate_default_timezone_set()functionAtthestArtofyourscriptWithavalIdidentIdentifiersuchas'america/new_york'.1.usedate_default_default_timezone_set_set()

我如何驗證PHP中的用戶輸入以確保其符合某些標(biāo)準(zhǔn)? 我如何驗證PHP中的用戶輸入以確保其符合某些標(biāo)準(zhǔn)? Jun 22, 2025 am 01:00 AM

TovalidateuserinputinPHP,usebuilt-invalidationfunctionslikefilter_var()andfilter_input(),applyregularexpressionsforcustomformatssuchasusernamesorphonenumbers,checkdatatypesfornumericvalueslikeageorprice,setlengthlimitsandtrimwhitespacetopreventlayout

什麼是php(serialize(),Unserialize())中的數(shù)據(jù)序列化? 什麼是php(serialize(),Unserialize())中的數(shù)據(jù)序列化? Jun 22, 2025 am 01:03 AM

thephpfunctionserize()andunSerialize()redustoconvertComplexdatStructDestoresToroStoroStoroSandaBackagagain.1.Serialize()

如何將PHP代碼嵌入HTML文件中? 如何將PHP代碼嵌入HTML文件中? Jun 22, 2025 am 01:00 AM

可以將PHP代碼嵌入HTML文件中,但需確保文件以.php為擴展名,以便服務(wù)器能正確解析。使用標(biāo)準(zhǔn)的標(biāo)籤包裹PHP代碼,可在HTML中任意位置插入動態(tài)內(nèi)容。此外,可在同一文件中多次切換PHP與HTML,實現(xiàn)條件渲染等動態(tài)功能。務(wù)必注意服務(wù)器配置及語法正確性,避免因短標(biāo)籤、引號錯誤或遺漏結(jié)束標(biāo)籤導(dǎo)致問題。

編寫清潔和可維護的PHP代碼的最佳實踐是什麼? 編寫清潔和可維護的PHP代碼的最佳實踐是什麼? Jun 24, 2025 am 12:53 AM

寫乾淨(jìng)、易維護的PHP代碼關(guān)鍵在於清晰命名、遵循標(biāo)準(zhǔn)、合理結(jié)構(gòu)、善用註釋和可測試性。 1.使用明確的變量、函數(shù)和類名,如$userData和calculateTotalPrice();2.遵循PSR-12標(biāo)準(zhǔn)統(tǒng)一代碼風(fēng)格;3.按職責(zé)拆分代碼結(jié)構(gòu),使用MVC或Laravel式目錄組織;4.避免麵條式代碼,將邏輯拆分為單一職責(zé)的小函數(shù);5.在關(guān)鍵處添加註釋並撰寫接口文檔,明確參數(shù)、返回值和異常;6.提高可測試性,採用依賴注入、減少全局狀態(tài)和靜態(tài)方法。這些做法提升代碼質(zhì)量、協(xié)作效率和後期維護便利性。

如何使用PHP執(zhí)行SQL查詢? 如何使用PHP執(zhí)行SQL查詢? Jun 24, 2025 am 12:54 AM

Yes,youcanrunSQLqueriesusingPHP,andtheprocessinvolveschoosingadatabaseextension,connectingtothedatabase,executingqueriessafely,andclosingconnectionswhendone.Todothis,firstchoosebetweenMySQLiorPDO,withPDObeingmoreflexibleduetosupportingmultipledatabas

See all articles