1. php如何遍歷指定文件夾,獲取所有文件列表並生成下載鏈接
試編寫代碼如下:
<?php
$dir="D:/WWW/ftp";//指定的路徑
$sitepath='http://localhost/ftp/';
//遍歷文件夾下所有文件
if(false!=($handle=opendir($dir))){
echo"$dir目錄下的文件列表:<BR/>";
$i=0;
while(false!==($file=readdir($handle))){
if($file!="."&&$file!=".."&&!is_dir($dir.'/'.$file)){
echo'<ahref="'.$sitepath.$file.'">'.$file.'</a><br/>';
}
}
//關閉句柄
closedir($handle);
}
?>
代碼中需要提示的是:
如果是運行於互聯網上,需要考慮文件的訪問安全性。
運行截圖:
2. php 獲取當前目錄所有文件夾名 及下級目錄文件夾名 求代碼詳解
把這個文件放到\wamp\www\ 這里,然後運行。
<?php
if (isset($_GET['dir'])){ //設置文件目錄
$basedir=$_GET['dir'];
}else{
$basedir = '.';
}
checkdir($basedir);
function checkdir($basedir)
{
if ($dh = opendir($basedir)) {
while (($file = readdir($dh)) !== false) {
if ($file != '.' && $file != '..'){
if (!is_dir($basedir."/".$file)) {
echo "filename: $basedir/$file <br>";
}else{
$dirname = $basedir."/".$file;
checkdir($dirname);
}
}
}
closedir($dh);
}
}
?>
[以下於為題無關]
嗎蛋,代碼前的空格都沒了,這不是我去掉的哦,是百X把空格全去了,有強迫症表示不能接受啊...........
3. php如何讀取某目錄下的所有同類型文件
PHP的glob() 函數返回匹配指定模式的文件名或目錄。
該函數返回一個包含有匹配文件 / 目錄的數組。如果出錯返回 false。
語法
glob(pattern,flags)
參數
描述
file
必需。規定檢索模式。
size
可選。規定特殊的設定。
GLOB_MARK - 在每個返回的項目中加一個斜線
GLOB_NOSORT - 按照文件在目錄中出現的原始順序返回(不排序)
GLOB_NOCHECK - 如果沒有文件匹配則返回用於搜索的模式
GLOB_NOESCAPE - 反斜線不轉義元字元
GLOB_BRACE - 擴充 {a,b,c} 來匹配 'a','b' 或 'c'
GLOB_ONLYDIR - 僅返回與模式匹配的目錄項
GLOB_ERR - 停止並讀取錯誤信息(比如說不可讀的目錄),默認的情況下忽略所有錯誤
注釋:GLOB_ERR 是 PHP 5.1 添加的。
例子 1
<?php
$a=glob("*.txt");
print_r(count($a));
?>
4. php最經典,最基礎的代碼,適合入門的
PHP是一種可以嵌入到HTML中的運行在伺服器端的腳本語言,所以為了體現PHP的特性我們可以分兩種模式來實現PHP代碼
1、 PHP嵌入到HTML中,例如index.php
<html>
<head></head>
<body>
<!--因為PHP嵌入到HTML中,所以需要完全區分PHP代碼和HTML代碼-->
<?php
//輸出helloworld
echo'helloworld;
?>
</body>
</html>
2、 PHP獨立文件,只有PHP代碼,例如index.php
<?php
//輸出
echo'helloworld';
//不需要閉合標簽
5. PHP 列出當前目錄下所有文件(自身別列出來)
1、列出當前目錄的文件、文件夾完整路徑
ls
-1
|awk
'{print
i$0}'
i=`pwd`'/'
(注意:這里
ls
後面那是個數字
1
而不是字母
l)
2、列出當前目錄及子目錄的文件、文件夾完整路徑
ls
-r
|awk
'{print
i$0}'
i=`pwd`'/'
2b)
列出當前目錄及子目錄下的文件夾完整路徑
ls
-fr
|
grep
/$
|
sed
"s:^:`pwd`/:"
3、用find實現,好像運行要慢些
find
/
-name
"*.*"
-exec
ls
{}
\;
4、遞歸列出當前目錄及子目錄名稱
ls
-fr
|
grep
/$
5、遞歸列出當前目錄及子目錄名稱,包括相關屬性
ls
-lr
|
grep
"^d"
#
drwxr-xr-x
3
idea
idea
4096
aug
2
2009
images
6、只列出當前目錄下的子目錄
用ls只列出子目錄
ls
-d
*/