今天終于弄懂了sae的storage怎么使用。
因?yàn)閟ae不支持文件權(quán)限設(shè)置,所有的代碼文件都是不可數(shù)的。但是sae提供了特別好的一個(gè)分布式文件存儲(chǔ)服務(wù),用來(lái)存放持久文件。其實(shí)就是用來(lái)存放網(wǎng)站的素材文件,如圖片,文件等等的。
所以,當(dāng)需要存儲(chǔ)文件數(shù)據(jù)的時(shí)候,可以使用使用sae。
使用sae一共有兩種方案。
官方提供的一種方案是:
使用官方的storage類,直接可以進(jìn)行文件操作,如存放文件,刪除文件,修改文件等等。
還有一種方法是我在sae的應(yīng)用商店看到的,里面有一個(gè)合成的wordpress for sae。
我們可以看到詳細(xì)的代碼,我現(xiàn)在將自己簡(jiǎn)單的測(cè)試代碼貼到下面:(只為實(shí)現(xiàn)storage,不適用于開發(fā)場(chǎng)景)
代碼如下
<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];
}
if(move_uploaded_file($_files[file][tmp_name],$upload_dir . $_files[file]['name']))
{
echo 'ok';
}
//mkdir($upload_dir . 'qiao' , 0777);
?>
我們可以直接使用move_uploaded_file函數(shù)將臨時(shí)文件上傳。要注意的是第二個(gè)參數(shù)$upload_dir=”saestor://” . $domain . “/” . $dir。
其中,$domain就是storage中創(chuàng)建的storage服務(wù)名稱。$dir就是要存放的目錄。
如要將文件存放在saestor://mydomain/dir1/dir2/dir3/下??梢灾苯邮褂迷搖rl,而不需要使用mkdir函數(shù)進(jìn)行創(chuàng)建,因?yàn)閟totage已經(jīng)將該目錄自動(dòng)進(jìn)行了創(chuàng)建。
更多信息請(qǐng)查看IT技術(shù)專欄