日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術(shù)文章
文章詳情頁

PHP mkdir創(chuàng)建文件夾實(shí)現(xiàn)方法解析

瀏覽:209日期:2022-09-08 17:23:07

在開始之前,我先說明一下,可能許多朋友與我一樣認(rèn)為只要給一個(gè)路徑,mkdir就可以創(chuàng)建文件夾,其它不是那樣,單個(gè)的MKDIR只能創(chuàng)建一級(jí)目錄,對(duì)于多級(jí)的就不行了,那如何用mkdir來創(chuàng)建呢?先我抄一段手冊(cè)上的有關(guān)mkdir的描述,如下:

說明

bool mkdir ( string pathname [, int mode [, bool recursive [, resource context]]] )

嘗試新建一個(gè)由 pathname 指定的目錄。

注意也許想用八進(jìn)制數(shù)指定模式,也就是說該數(shù)應(yīng)以零打頭。模式也會(huì)被當(dāng)前的 umask 修改,可以用 umask() 來改變。

注意: mode 在 Windows 下被忽略。自 PHP 4.2.0 起成為可選項(xiàng)。

默認(rèn)的 mode 是 0777,意味著最大可能的訪問權(quán)。有關(guān) mode 的更多信息請(qǐng)閱讀 chmod() 頁面。

例 1. mkdir() 例子

<?phpmkdir('/path/to/my/dir', 0700);?>

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

例 2. mkdir() 例子

$dir = iconv('UTF-8', 'GBK', 'public/log');if (!file_exists($dir)){mkdir ($dir,0777,true);echo ’創(chuàng)建文件夾log成功’;} else {echo ’需創(chuàng)建的文件夾log已經(jīng)存在’;}

iconv方法是為了防止中文亂碼,保證可以創(chuàng)建識(shí)別中文目錄,不用iconv方法格式的話,將無法創(chuàng)建中文目錄

mkdir方法的第一個(gè)參數(shù)是要?jiǎng)?chuàng)建的目錄路徑,第二個(gè)參數(shù)是指創(chuàng)建目錄的權(quán)限,在windows系統(tǒng)下該參數(shù)會(huì)被忽略,第三個(gè)參數(shù)是指是否創(chuàng)建多級(jí)目錄,默認(rèn)為false參考鏈接:https://www.cnblogs.com/modou/p/5991365.html

注意: 自 PHP 5.0.0 rmdir() 也可用于某些 URL 封裝協(xié)議。參見附錄 N 的列表看看 rmdir() 支持哪些 URL 封裝協(xié)議。

注意: 對(duì) context 的支持是 PHP 5.0.0 添加的。有關(guān) context 的說明見參考 CLX, Stream Functions。

注意: recursive 參數(shù)是 PHP 5.0.0 添加的。

注意: 當(dāng)安全模式被激活時(shí),PHP 將檢查被操作的目錄是否和正在執(zhí)行的腳本有相同的 UID(所有者)。

以上是PHP5手冊(cè)上的描述信息,即你可以這樣:mkdir(’./test’,0777)就能創(chuàng)建一個(gè)文件夾了。但是如何遞歸創(chuàng)建多級(jí)目錄呢?其方式有:

1 PHP5 下創(chuàng)建目錄函數(shù) mkdir 增加了一個(gè)新的參數(shù) recursive ,通過設(shè)置 recursive 為 true 可以實(shí)現(xiàn)遞歸創(chuàng)建目錄的目的,但是對(duì)PHP4就不行了。

2 自己寫一個(gè)遞歸創(chuàng)建多級(jí)目錄。

這里,我對(duì)第二種方式作一點(diǎn)說明,也有兩種方式,如下:

第一種(用mkdirs來產(chǎn)生多級(jí)父級(jí))

function mkdirs($dir, $mode = 0777){if (is_dir($dir) || @mkdir($dir, $mode)) return TRUE;if (!mkdirs(dirname($dir), $mode)) return FALSE;return @mkdir($dir, $mode);}

說明:

1 首先 簡(jiǎn)單說一下mkdir()與mkdirs()的區(qū)別,以及,is_dir和dirname():

mkdir() 只能在已經(jīng)存在的目錄中創(chuàng)建創(chuàng)建文件夾(即父級(jí)必須有才行)。

mkdirs() 可以在不存在的目錄中創(chuàng)建文件夾。諸如:a//b,既可以創(chuàng)建多級(jí)目錄。

dirname() 是返回路徑中的目錄部分。

is_dir() 用于判斷給出的文件名是否是一個(gè)有效的目錄

2 大致流程為:

(1) 先用is_dir判斷是否已是一個(gè)文件夾,如果是則返回TRUE。如沒有(或者不是文件夾),則試著創(chuàng)建它,當(dāng)然有可以父級(jí)不存在,那mkdir直接就創(chuàng)不成功,但也為不報(bào)錯(cuò),所以就用@來抑止報(bào)非致命錯(cuò)誤。

(2)如果傳參數(shù)都不滿足條件,那么就進(jìn)入第二個(gè)if語句,先是取得路徑中的目錄部分,當(dāng)然有可能是不存在的多級(jí)父級(jí),所以用了mkdirs()來先創(chuàng)建父級(jí),如果成功(不成功返回FALSE),那么再用mkdir來創(chuàng)建最終的目錄了。好了,以上就是第一種方案。

第二種(說明:此方案是相當(dāng)?shù)木?jiǎn),那是相當(dāng)?shù)牟诲e(cuò)的方案,推薦使用它)

function create_folders($dir){return is_dir($dir) or (create_folders(dirname($dir)) and mkdir($dir, 0777));}

說明: 1 大致流程: 得到路徑后,先判斷是否已是一個(gè)有效的文件目錄,如是則返回,結(jié)束程序。如果不是,(由于這里用了OR作先擇性的條件,即只要滿足其中一個(gè)條件就行),則遞歸再調(diào)用自身,并且傳入的路徑中,少一級(jí)目錄。這樣來先回到上級(jí)有的父級(jí)目錄中,再用mkdir來創(chuàng)建下一級(jí)的。

好了,以上就是用PHP來創(chuàng)建文件夾(以及多級(jí)文件夾)的方法。_

總結(jié):

1 用PHP5中自帶的mkdir 中的一個(gè)新的參數(shù) recursive ,通過設(shè)置 recursive 為 true 可以實(shí)現(xiàn)遞歸創(chuàng)建目錄的目的,但是對(duì)PHP4就不行了。

2 自己寫的方法中,用mkdirs來創(chuàng)建多級(jí)父級(jí)目錄方式

3 仍然用mkdir很巧妙的來創(chuàng)建

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: PHP
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
国产不卡人人| 国产精品调教视频| 黄色精品视频| 精品高清久久| 日韩精品欧美| 欧美日韩在线观看视频小说| 亚洲五月婷婷| 免费观看在线色综合| 亚洲精品国产偷自在线观看| 人人爽香蕉精品| 国产探花一区| caoporn视频在线| 一区在线免费| 久久国产精品免费一区二区三区 | 亚洲成人日韩| 亚洲精品精选| 国内自拍视频一区二区三区| 亚洲福利国产| 男女男精品视频网| 美女尤物国产一区| 蜜桃成人av| 亚洲人成网77777色在线播放| 久久午夜影视| 国产精品2023| 亚洲成人三区| 国产精品久久久久毛片大屁完整版| 国产精品99视频| 亚洲免费观看| 欧美91在线| 免费观看不卡av| 国产日韩高清一区二区三区在线| 国产福利片在线观看| 欧美专区一区二区三区| 国产福利资源一区| 国产在线欧美| 国产精品一区二区精品| 亚洲成人国产| 亚洲免费观看高清完整版在线观| 久久久久伊人| 鲁大师影院一区二区三区| 精品一区二区三区免费看 | 久久香蕉网站| 视频一区视频二区在线观看| 国产欧美日韩精品高清二区综合区 | 亚洲电影在线| 欧美亚洲色图校园春色| 国产精品av久久久久久麻豆网| 国产精品一区高清| 久久99伊人| 一本大道色婷婷在线| 国产亚洲精aa在线看| 99国产精品久久久久久久成人热| 久久男人av| 日韩高清一区在线| 亚洲激情另类| 欧美二三四区| 美女免费视频一区| 日本成人中文字幕| 欧美+日本+国产+在线a∨观看| 欧美激情五月| 美女网站久久| 国产综合视频| 国内精品美女在线观看| 91精品国产自产观看在线| 国产亚洲精品久久久久婷婷瑜伽| 日韩欧美1区| 精品99在线| 国产精品一区高清| 亚洲精品成人一区| 免费视频久久| 亚洲激情不卡| 欧美日韩激情在线一区二区三区| 日韩大片在线观看| 精品少妇av| 久久中文欧美| 一区二区三区四区精品视频| 精品日韩毛片| 日韩影院二区| 中文在线资源| 91综合网人人| 精品国产乱码久久久久久樱花 | 亚洲免费婷婷| 日韩午夜在线| 国产二区精品| 香蕉久久精品| 亚洲a在线视频| 久久久久久黄| 99精品视频在线| 激情久久一区二区| 韩日一区二区| 国产66精品| 精品久久精品| 精品国产亚洲一区二区三区| 老鸭窝一区二区久久精品| 国产亚洲欧美日韩在线观看一区二区 | 婷婷精品进入| 国产精品久久久久久妇女 | 久久中文字幕av| 欧洲av不卡| 黑森林国产精品av| 欧美男人天堂| 一区二区三区四区在线看| 啪啪国产精品| 亚洲激情五月| 亚洲一级大片| 久久精品97| 免费在线欧美黄色| 国产成人久久| 国产成人免费av一区二区午夜| 久久精品国产999大香线蕉| 精品欧美视频| 久久久精品五月天| 日韩网站在线| 蜜桃一区二区三区在线| 日韩av电影一区| 久久精品国产99| 国产高潮在线| 午夜日本精品| 欧美亚洲一级| 中文在线资源| 亚洲视频播放| 国产欧美一级| 日韩免费高清| 免费av一区二区三区四区| 天堂va蜜桃一区二区三区| 日韩欧美激情电影| 麻豆国产91在线播放| 久久中文视频| 亚州av日韩av| 成人污污视频| 亚洲经典在线| 欧美日韩一区自拍| 日韩国产综合| 亚洲黄色影院| 国产伦精品一区二区三区视频| 国产精品99一区二区三| 国产亚洲精品久久久久婷婷瑜伽| 日本欧美大码aⅴ在线播放| 精品欧美日韩精品| 免费精品国产| 久久国产三级| 国产精品99免费看| 国产亚洲字幕| 在线日韩中文| 国产精品亚洲四区在线观看| 亚洲午夜在线| 国产精品日本一区二区三区在线 | 欧洲激情综合| 国产精品探花在线观看| 超碰在线99| 日韩精品社区| 激情欧美国产欧美| 国产精品伦一区二区| 蜜桃tv一区二区三区| 国产日韩免费| 在线 亚洲欧美在线综合一区| 欧美激情一区| 免费在线视频一区| 日韩电影在线视频| 久久国产麻豆精品| 亚洲成人日韩| 麻豆视频在线看| 欧美影院精品| 先锋影音国产一区| 精品福利久久久| 日日夜夜免费精品视频| 精品捆绑调教一区二区三区| 日韩国产高清在线| 亚洲激情婷婷| 日韩在线免费| 精品无人区麻豆乱码久久久| 免费在线观看成人| 久久免费国产| 国语精品一区| 日本午夜精品久久久| 国产高清一区| 亚洲女同av| 久久av影视| 欧美一级二级三级视频| av不卡在线看| 日韩精品午夜| 黄色在线网站噜噜噜| 国产福利亚洲| 久久国产人妖系列| 天堂va欧美ⅴa亚洲va一国产| 在线综合亚洲| 韩日一区二区三区| 亚洲精品一级二级| 97精品一区二区| 精品久久国产一区| 美女久久久久久 | 91成人福利| 蜜臀av性久久久久蜜臀aⅴ四虎 | 激情久久99| 久久久久亚洲精品中文字幕| 欧美日韩黄网站| 69堂精品视频在线播放| 日韩精品免费视频一区二区三区| 亚洲深夜福利在线观看| 亚洲狼人精品一区二区三区|