課程
/后端開發(fā)
/PHP
/WEB在線文件管理器
$handle = opendir($path);
$file = readdir($handle);(忽略目錄的話)這里返回一個文件,為什么不能直接通過filesize($file)返回該文件的大?。?/p>
2014-08-22
源自:WEB在線文件管理器 1-3
正在回答
嗯 那就可以直接用filesize返回大小,如果是目錄就不行了,需要將目錄中的文件大小求和計(jì)算^_^...
另外 readdir返回的是一個字符串類型; string readdir ([ resource $dir_handle ] )
必須指定路徑,$file本來就是個字符串類型,你不指名全路徑,你怎么能認(rèn)為它就是一個文件呢? 難道“a.php” 你就說他是個文件嗎?它只是一個字符串而已! 如果PHP中有文件類型 你可以把文件類型的值當(dāng)做是文件,這樣就不用指定全路徑!
<?php function readDirectory($path) { $files = opendir ( $path ); while ( ($file = readdir ( $files )) !== false ) { if ($file != "." && $file != "..") { echo $file . ": "; if (is_file ( $path."/".$file )) { //if(is_file($file)){ echo 'It\'s file '."\n"; } else if (is_dir ( $path."/".$file )) { echo 'It\'s dir '."\n"; } else { echo 'unknown'."\n"; } } } closedir ( $files ); } readDirectory ( 'files' );
is_file ( $path."/".$file )可以正確判斷$file是否為文件,為啥is_file($file)不能?如果$file本身就是一個文件的話,is_file應(yīng)該能夠判斷它才對吧?我用上面代碼測試的時候,用is_file($file)判斷是錯誤的.....
舉報(bào)
通過本課程文件目錄函數(shù)庫的學(xué)習(xí),讓你掌握文件、目錄函數(shù)庫的應(yīng)用
8 回答
10 回答
14 回答
9 回答
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網(wǎng)安備11010802030151號
購課補(bǔ)貼聯(lián)系客服咨詢優(yōu)惠詳情
慕課網(wǎng)APP您的移動學(xué)習(xí)伙伴
掃描二維碼關(guān)注慕課網(wǎng)微信公眾號
2014-08-22
嗯 那就可以直接用filesize返回大小,如果是目錄就不行了,需要將目錄中的文件大小求和計(jì)算^_^...
2014-09-04
2014-09-04
2014-08-22
is_file ( $path."/".$file )可以正確判斷$file是否為文件,為啥is_file($file)不能?如果$file本身就是一個文件的話,is_file應(yīng)該能夠判斷它才對吧?我用上面代碼測試的時候,用is_file($file)判斷是錯誤的.....