簡體   English   中英

在GAE上使用PHP讀取目錄

[英]Reading a directory with PHP on GAE

我正在嘗試使用Google App Engine上的php的scandir讀取目錄。 文件夾'img'中的文件肯定可以訪問,但是我試圖獲取該文件夾中所有文件的列表。 怎么了?

所有文件顯然都正確上傳,因此app.yaml應該可以。 是PHP錯誤還是GAE限制?

這是我的主要php腳本,在訪問我的網站的/時運行

   <?php

    $dir = 'img';
    if (is_dir($dir)) {
        //this code is never reached:
        echo "directory exists :-)";
        $filenames = scandir($dir, 0);
        print_r($filesnames);
    } else {
        echo "No such directory";
    }

    // this works:
    echo "<div>
        <img src=\"/img/example.png\">
    </div>";

    // this works:
    $files1 = scandir(getcwd());
    print_r($files1);

    ?>

opendir($ dir)也不起作用。

這是我的app.yaml:

application: mypage
version: 1
runtime: php55
api_version: 1

handlers:

# image files
- url: /img/(.*\.(bmp|gif|ico|jpeg|jpg|png))
  static_files: img/\1
  upload: img/(.*\.(bmp|gif|ico|jpeg|jpg|png))

- url: /.*
  script: helloworld.php

# this is probably redundant:
- url: /img
  static_dir: img

編輯:將此行添加到圖像文件部分(不一定是img文件夾)解決了問題:application_read:true

文檔中

application_readable

可選的。 默認情況下,在靜態文件處理程序中聲明的文件將作為靜態數據上傳,並且僅提供給最終用戶,應用程序無法讀取它們。 如果此字段設置為true,則文件也將作為代碼數據上傳,因此您的應用程序可以讀取它們。 兩次上載均按您的代碼和靜態數據存儲資源配額收費。

嘗試將application_readable標志添加到img處理程序。 我不是100%知道該標志除了其內容之外是否還會覆蓋img目錄本身。 值得一試。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM