blob读取txt php

时间:2013-03-11 11:18:28

标签: php azure blob

我的天蓝色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);

1 个答案:

答案 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。