請問一下php函數中輸出 readdir()的中 “.”,“..”的含義??

來源:互聯網
上載者:User
  1. 如果while(readdir($dir) !==false) { var_dump()) } 會輸出 “ .” 和“..”已經其他檔案名稱,其中“.”,“..”代表啥意思呀???
    不要告訴我表示目前的目錄,及上級目錄,我不理解為什麼會這樣輸出,他們是相對誰的目錄而言的呢??
    -

  2. 還有就是不管我的目錄層級多少級,都只輸出“.”,“..”為什麼不輸出的、更多的目錄??就自己輸出我的根目錄檔案名稱了呢?例如 我的
    $dir = "D:/www/www.test.whk/1111/2222/3333/4444/5555/"; 但是我輸出readdir時是
    string(1) "."
    string(2) ".."
    string(8) "test.txt"
    bool(false)
    bool(false)
    bool(false) , 為啥就輸出兩級目錄呢,明明應該是7級目錄的呀??不懂!求解!!

回複內容:

  1. 如果while(readdir($dir) !==false) { var_dump()) } 會輸出 “ .” 和“..”已經其他檔案名稱,其中“.”,“..”代表啥意思呀???
    不要告訴我表示目前的目錄,及上級目錄,我不理解為什麼會這樣輸出,他們是相對誰的目錄而言的呢??
    -

  2. 還有就是不管我的目錄層級多少級,都只輸出“.”,“..”為什麼不輸出的、更多的目錄??就自己輸出我的根目錄檔案名稱了呢?例如 我的
    $dir = "D:/www/www.test.whk/1111/2222/3333/4444/5555/"; 但是我輸出readdir時是
    string(1) "."
    string(2) ".."
    string(8) "test.txt"
    bool(false)
    bool(false)
    bool(false) , 為啥就輸出兩級目錄呢,明明應該是7級目錄的呀??不懂!求解!!

結合樓上們的提議,自己總算搞明白了,

要搞懂 readdir()函數的用法和Linux目錄結構,

  • readdir() php manual上是這樣寫的,返回目錄中下一個檔案的檔案名稱,切檔案名稱以在檔案系統中的排序返回,

  • 看鳥哥的私房菜,上文檔目錄這部分是這樣介紹的,每個目錄底下都會存在的兩個目錄,分別是‘.’,‘..’

綜上所述,就不能理解了,

常識問題,.目前的目錄,..上級目錄

新增:不好意思,我只看到了第一句問號。。。請查閱文檔:http://php.net/manual/zh/function.readdir.php

樓主要知道,檔案夾也是檔案的一種特別存在形式,你讀取目前的目錄,意思是讀取目前的目錄下的檔案。目前的目錄下只有目前的目錄和上級目錄的控制代碼,當然還有下層目錄的控制代碼和目前的目錄下的檔案。所以你讀到這些,而不會有其他的路徑資訊。

這裡樓主可能多理解下linux的檔案結構,會更好的理解這個問題

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.