Thinkphp在新浪SAE上传文件后怎么才能获取文件地址?
例如我上传一个xls文件:
在本地代码getUploadFileInfo()得到的是:
["savepath"] => string(22) "./Uploads/edata/201207/"
["savename"] => string(17) "500d1725e9c09.xls"
文件上传到SAE的Storage时, savepath 没有根目录名,也就是没法获得[sae]domain,是这样:
["savepath"] => string(13) "edata/201207/"
["savename"] => string(17) "500d1725e9c09.xls"
在控制器里我要访问刚刚上传的这个文件,访问地址是 savepath + savename ,在本地测试是能读到文件的,在SAE上地址用 savepath + savename 就不能了访问了。
而在SAE上应该是: 应用Storage地址 + 文件Domain + 上面的 edata/201207/500d1725e9c09.xls
在Thinkphp官方文档中配置config_sae.php这项只是为了模板显示时能访问正确地址,但Thinkphp在控制类或模型中要访问这文件怎么办呢?是不是还得自己专门去取新浪SAE里Storage文件的方法?这不就未必了用户程序无须修改就能兼容SAE的初衷?
在本地代码getUploadFileInfo()得到的是:
["savepath"] => string(22) "./Uploads/edata/201207/"
["savename"] => string(17) "500d1725e9c09.xls"
文件上传到SAE的Storage时, savepath 没有根目录名,也就是没法获得[sae]domain,是这样:
["savepath"] => string(13) "edata/201207/"
["savename"] => string(17) "500d1725e9c09.xls"
在控制器里我要访问刚刚上传的这个文件,访问地址是 savepath + savename ,在本地测试是能读到文件的,在SAE上地址用 savepath + savename 就不能了访问了。
而在SAE上应该是: 应用Storage地址 + 文件Domain + 上面的 edata/201207/500d1725e9c09.xls
在Thinkphp官方文档中配置config_sae.php这项只是为了模板显示时能访问正确地址,但Thinkphp在控制类或模型中要访问这文件怎么办呢?是不是还得自己专门去取新浪SAE里Storage文件的方法?这不就未必了用户程序无须修改就能兼容SAE的初衷?
本文由 vps网友提供,转载请注明出处
本文链接: https://www.vpsvsvps.com/discuss/a/1676471591183060992.html