我想从指定容器中下载所有斑点作为zip文件。有什么方法可以直接从Azure下载其作为ZIP,无需在我的服务器上处理它?
目前我认为如下:
file_put_contents("file_name", get_file_contents($blob_url));
我将将所有文件存储在服务器上,然后创建这些文件的ZIP文件,然后强迫下载。。
azure没有这样的设施可以为您生成一堆斑点的zip文件。Azure存储只是...存储。您需要通过PHP SDK下载每个斑点(如果您选择的话,或直接通过API)。
,如果您想要内容sip'd,则需要在存储在blob存储中之前将内容拉链。
您的代码(在您的问题中)无法正常工作,因为get_file_contents()
希望与文件I/O一起使用,这不是与Blob互动的方法。相反,您会做这样的事情:
$getBlobResult = $blobClient->getBlob("<containername>", "<blobname>");
file_put_contents("<localfilename>", $getBlobResult->getContentStream());