微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用户名中带有@的CURL

如何解决用户名中带有@的CURL

| 我试图通过FTP用CURL上传文件。但是我的用户名有问题,在我的主机中,所有FTP用户名均为user@site.com,因此在尝试上传时出现以下错误: 卷曲错误:无法解析主机\'site.com:password@site.com \' 这是代码
      $ftpuser = \'uploader@mysite.com\';
      $ftppass = \"blablabla\";
      $ftppath = \"mysite.com/\";
      $ftpurl = \"ftp://\".$ftpuser.\":\".$ftppass.\"@\".$ftppath;
有人可以告诉我如何传递用户名解决问题。     

解决方法

两件事情: 通过使用
urlencode
转换非安全字符,您应该能够解决
@
问题。 我相信,最好将
CURLOPT_USERPWD
选项与
curl_setopt
一起使用来设置用户名和密码对。 所以:
<?php 

$ftpuser = urlencode(\'uploader@mysite.com\');
$ftppass = urlencode(\'blablabla\');
$ftppath = \'mysite.com/\';

$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,\'ftp://\' . $ftppath);
curl_setopt($ch,CURLOPT_USERPWD,$ftpuser . \':\' . $ftppass);
curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);

$result = curl_exec();
    ,您是否可以分别给curl用户名和密码(而不是全部作为URL的一部分),以帮助它更正确地理解数据。     

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。