SAE全稱是Sina App Engine(簡稱SAE)是新浪研發中心推出的國內首個公有云計算平臺,支持PHP,MySQL,Memcached,Mail,TaskQueue,RDC(關系型數據庫集群)等服務,下面我們來看SAE的storage服務用法
今天終于弄懂了sae的storage怎么使用,這里是sae的storage的概述地址:
http://sae.sina.com.cn/doc/php/storage.html。
因為sae不支持文件權限設置,所有的代碼文件都是不可數的,但是sae提供了特別好的一個分布式文件存儲服務,用來存放持久文件,其實就是用來存放網站的素材文件,如圖片,文件等等的,所以,當需要存儲文件數據的時候,可以使用使用sae.
使用sae一共有兩種方案.
官方提供的一種方案是:使用官方的storage類,直接可以進行文件操作,如存放文件,刪除文件,修改文件等等.
官方API文檔地址:http://apidoc.sinaapp.com/sae/SaeStorage.html
還有一種方法是我在sae的應用商店看到的,里面有一個合成的wordpress for sae,我們可以看到詳細的代碼,我現在將自己簡單的測試代碼貼到下面,只為實現storage,不適用于開發場景,代碼如下:
- <html>
- <body>
- <form action="" method="post" enctype="multipart/form-data">
- <label for="file">Filename:</label>
- <input type="file" name="file" id="file" />
- <br />
- <input type="submit" name="submit" value="Submit" />
- </form>
- </body>
- </html>
- <?php
- $domain = "test";
- $upload_dir = "saestor://" . $domain . "/qiao1/2/3/4/5/";
- if(!is_dir($upload_dir))
- {
- //mkdir($upload_dir , 0777);
- }
- if ($_FILES["file"]["error"] > 0)
- {
- echo "Error: " . $_FILES["file"]["error"] . "<br />";
- }
- else
- {
- echo "Upload: " . $_FILES["file"]["name"] . "<br />";
- echo "Type: " . $_FILES["file"]["type"] . "<br />";
- echo "Size: " . ($_FILES["file"]["size"] / 1024) . " Kb<br />";
- echo "Stored in: " . $_FILES["file"]["tmp_name"];
- //開源軟件:Vevb.com
- }
- if(move_uploaded_file($_FILES["file"]["tmp_name"],$upload_dir . $_FILES["file"]['name']))
- {
- echo 'ok';
- }
- //mkdir($upload_dir . 'qiao' , 0777);
- ?>
我們可以直接使用move_uploaded_file函數將臨時文件上傳,要注意的是第二個參數$upload_dir=”saestor://” . $domain . “/” . $dir.
其中,$domain就是storage中創建的storage服務名稱,$dir就是要存放的目錄,如要將文件存放在saestor://mydomain/dir1/dir2/dir3/下,可以直接使用該url,而不需要使用mkdir函數進行創建,因為stotage已經將該目錄自動進行了創建.
新聞熱點
疑難解答