PHP-如何在Google云端存储中存储同名文件
作者:互联网
我正在创建一个网站,该网站上有许多用户上传的图像文件,因此随着时间的流逝,链接会在Google云存储上出现相同名称的图像,即使一个用户也可以随时间上传相同名称的图像,那么我该如何解决这个问题?
解决方法:
您可以做的一件事是在上传时在文件名中添加时间戳
例如
$date = new DateTime();
$timeStamp = $date->getTimestamp();
$fileName = $fileName. "_" . $timeStamp;
然后,当允许用户下载文件时,请读取文件名并从下划线删除最后一部分,并使用原始最终名称在url中为用户提供此参数的链接
$service = new Google_Service_Storage($client);
$objects = $service->objects->listObjects($bucketName);
// Assuming first item you are downloading
$objects = $objects['modelData']["items"][0];
$filename = substr($objects["name"], 0, strrchr($objects["name"],"_"));
$url .= "&response-content-disposition=attachment;%20filename=.$filename"
标签:google-cloud-storage,php 来源: https://codeday.me/bug/20191121/2050394.html