我的天蓝色blob存储中有一个txt(纯文本)文件。现在我想把它拿出来处理数据。我可以做的是下载文件的直接路径,它工作正常,并返回我上传的文件。
使用正常的.txt
文件(不在blob中,但在网站上),它工作正常,但blob文件并没有让我回复我需要的东西。该代码显示了它如何与非blob文件一起使用。
$file = $myData->ContentURI;
$fh = fopen($file, 'r');
$theData = fread($fh, filesize($file));
echo $theData;
fclose($fh);
现在我想要相同(或类似)的代码来读取blob txt。我确定文件确实存在,因为我可以下载它。
修改
管理自己修复它,我用以下代码更改了上面提到的代码:
$file = $myData->ContentURI;
echo file_get_contents($file);
答案 0 :(得分:1)
您可以尝试以下任一代码:
选项1:读取流
<?php
$blobUrl = "your blob's URL";
$fh = fopen($blobUrl, 'r');
$data='';
$size=102400;
while(!feof($fh))
$data.=fread($fh,$size);
fclose($fh);
echo $data;
?>
选项2:使用file_get_contents
读取URL<?php
$blobUrl = "your blob's URL";
$theData = file_get_contents($blobUrl);
echo $theData;
?>
<德尔>
请确保包含blob的blob容器没有“Private”ACL。它应该具有“Blob”或“容器”ACL。您可以在此处阅读有关ACL的更多信息:http://msdn.microsoft.com/en-us/library/windowsazure/dd179354.aspx。如果您希望将blob容器保密,则必须使用共享访问签名来创建临时URL以从Blob容器中读取blob。您可以在此处阅读有关共享访问签名的更多信息:http://msdn.microsoft.com/en-us/library/windowsazure/hh508996.aspx。
德尔>