将文件上传到我的网站目录

时间:2017-08-14 08:48:07

标签: php symfony urlencode

我尝试使用网址将文件(png)上传到我的网站目录:

$url = "http://api.qrserver.com/v1/create-qr-code/?data=hello_word&size=100x100";
$file = file_get_contents($url);
$fileName = "filename";
$dir = $this->get('kernel')->getRootDir() . '/../web/uploads/img';
$file->move( $dir , $fileName);
  

警告:file_get_contents(http://api.qrserver.com/v1/create-qr-code/?data=hello_word&size=100x100):无法打开流:HTTP请求失败! HTTP / 1.1 400错误请求

2 个答案:

答案 0 :(得分:1)

$fileName = "filename";
$dir = $this->get('kernel')->getRootDir() . 
'/../web/uploads/img'.$fileName;
$ch = curl_init('http://api.qrserver.com/v1/create-qr-code/?
data=hello_word&size=100x100');
$fp = fopen($dir, 'wb');
curl_setopt($ch, CURLOPT_FILE, $fp);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_exec($ch);
curl_close($ch);
fclose($fp);

尝试类似的东西。如果这不起作用我会考虑使用。 http://php.net/manual/en/function.file-put-contents.php

答案 1 :(得分:0)

  1. 函数file_get_contents将返回一个字符串。
  2. 您需要使用http://php.net/manual/en/function.urlencode.php函数对您的网址进行编码,然后再将其传递给file_get_contents
  3. 检查php.net文档中的file_put_contents函数。