2013-10-03 96 views
0

FTP函數fpt_nlist()總是返回2個附加元素:'/'。和'/ ..',所以即使我在空目錄上使用它,我也不會得到一個空數組。PHP ftp_nlist意外行爲

這是正常的嗎?我可以擺脫這個問題,還是必須接受它?

如果我檢查文件夾是否爲空,這種方式總是說文件夾不是空的。

當然,我可以解決這個問題:

if ($list !== FALSE AND count($list) > 0) 
{ 
    foreach ($list as $item) 
    { 
     if ($item != $filepath.'.' AND $item != $filepath.'..') 
     { 
     } 
    } 
} 

,但我想,而不是來解決這個問題。

回答

0

預期的行爲自...是特殊文件(目錄符號)。

.涉及當前目錄和..涉及父目錄(除了在根目錄中,在那裏它也代表本身)

此模式在我與(UNIX,Linux的工作的任何OS使用, OSx,Windows),你應該期望fpt_nlist()返回它們。

+0

我知道他們是什麼,但感謝提醒。實際上,上面的代碼是Codeigniter庫的一部分,它檢查文件夾是否爲空。在原來它不包括最後一個內部指令_if_,它會導致無限循環。我「固定」了它,因爲我沒有想到他們的圖書館有缺點。 – user2842799