Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/amazon-s3/2.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
如何使用curl-php上传文件或文件夹。?_Php_Curl_Box - Fatal编程技术网

如何使用curl-php上传文件或文件夹。?

如何使用curl-php上传文件或文件夹。?,php,curl,box,Php,Curl,Box,我想上传一个图片到我的邮箱帐户的根文件夹。 我怎样才能做到这一点。下面是我的代码,请检查 代码 $json = json_encode(array( 'name' => 'spring.jpg', 'folder' => array('id' =>'0')// 0 - uploads to main folder ));

我想上传一个图片到我的邮箱帐户的根文件夹。 我怎样才能做到这一点。下面是我的代码,请检查

代码

    $json = json_encode(array(
                        'name' => 'spring.jpg', 
                        'folder' => array('id' =>'0')// 0 - uploads to main folder
                        ));
    $fields = array(
                  'attributes' => $json,
                  'file'=> new CURLFile('@C:\xampp\htdocs\box\spring.jpg')
              );

    $ch = curl_init();
        curl_setopt($ch,CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json',          
        'Authorization: Bearer W1UkcTHsuuiDCA3Ej5n4xwMqoSGh0iVW'));
        curl_setopt($ch, CURLOPT_HEADER, 0);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $fields);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
        curl_setopt($ch, CURLOPT_VERBOSE, true);

        var_dump($fields);

        $response = curl_exec($ch);
        curl_close($ch);
        print_r($response);

提供的链接不起作用。代码应该首先由您检查,然后您应该告诉我们问题/错误是什么-请看一看。我检查了它,但没有显示错误,并且它没有上载文件。您可以调试curl操作-在curl\u exec()之后执行以下操作:
if(curl\u error($ch)==false)echo curl\u error($ch)
还有一个有用的函数:
curl\u getinfo()
,例如:
echo curl\u getinfo($ch,CURLINFO\u HTTP\u code)这将为您提供服务器响应代码;它显示无法打开文件“@C:\xampp\htdocs\box\spring.jpg”,如果我删除了@,那么屏幕上什么也看不到谢谢#Picard我现在已经解决了这个问题,这是我的新代码