Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/253.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
AzurePHP:通过对话上传到Blob?_Php_File Upload_Azure_Upload - Fatal编程技术网

AzurePHP:通过对话上传到Blob?

AzurePHP:通过对话上传到Blob?,php,file-upload,azure,upload,Php,File Upload,Azure,Upload,我是PHP新手,因此这可能是一项非常简单的任务: 现在,我正在从脚本中将文件上载到blob,而不允许用户选择特定文件: $result = $storageClient->putBlob('testcontainer', 'example.txt', 'C:/example.txt'); // Syntax: putBlob (ContainerName, NameInStorage, FileLocation) 我想为用户提供三个输入框,这样他/她可以一次性将三个文件上传到blob。大

我是PHP新手,因此这可能是一项非常简单的任务:

现在,我正在从脚本中将文件上载到blob,而不允许用户选择特定文件:

$result = $storageClient->putBlob('testcontainer', 'example.txt', 'C:/example.txt');
// Syntax: putBlob (ContainerName, NameInStorage, FileLocation)
我想为用户提供三个输入框,这样他/她可以一次性将三个文件上传到blob。大概是这样的:

//GetFile1Location();
//GetFile2Location();
//GetFile3Location();


$result = $storageClient->putBlob('testcontainer', 'example.txt', 'File1Location');
$result = $storageClient->putBlob('testcontainer', 'example.txt', 'File2Location');
$result = $storageClient->putBlob('testcontainer', 'example.txt', 'File3Location');
// Syntax: putBlob (ContainerName, NameInStorage, FileLocation)
我已经看过w3schools的文件上传教程,但我认为我所需要的只是选择一个文件并获取其路径的方法;putBlob似乎负责实际的上传。我只是对“GetFileLocation”操作有点麻烦

任何提示都将不胜感激。

我可能正在和自己约会(以及我在这里的php技能),但这应该只是像平常一样进行文件选择/上传的问题。然后,您只需将文件从其临时位置通过您已经布置好的代码流式传输到blob容器中。您可以在以下位置找到执行文件上载的示例:

我将在周末为您准备一个代码示例(只是今天没有时间)

1月20日更新 很抱歉花了这么长时间,但这里是承诺的代码示例

require_once('Microsoft/AutoLoader.php');

if (!empty($_FILES['userfile']['name']))
{
    $container = 'sampleblobs';
    $filename = "somefolder/".$_FILES['userfile']['name'];

    $blobStorageClient = new Microsoft_WindowsAzure_Storage_Blob();
    $blobStorageClient->createContainerIfNotExists($container);

    $blobStorageClient->putBlob(
        $container, // container name
        $filename,  // name in storage
        $_FILES['userfile']['tmp_name'],  // object to upload
        array('createdby' => 'CodeMash', 'FileType' => 'jpg') // metadata
    );

    echo "<br>file uploaded.";
}
require_once('Microsoft/AutoLoader.php');
如果(!空($\u文件['userfile']['name']))
{
$container='sampleblobs';
$filename=“somefolder/”$\u文件['userfile']['name'];
$blobStorageClient=新的Microsoft_WindowsAzure_存储_Blob();
$blobStorageClient->createContainerIfNotExists($container);
$blobStorageClient->putBlob(
$container,//容器名称
$filename,//存储中的名称
$\u FILES['userfile']['tmp\u name'],//要上载的对象
数组('createdby'=>'CodeMash','FileType'=>'jpg')//元数据
);
回显“
文件已上载。”; }
啊,这帮了大忙。您不需要为我编写代码,但谢谢您的帮助。我想我就快到了;如果我搞不懂的话,我会和它搏斗,然后再发一次帖子。谢谢Brent:)。我正在为下周在Azure+PHP上演示的课程制作一个演示。我只想把这个加进去。:)