如何在php curl中使用CURLOPT_LOGIN_选项?

如何在php curl中使用CURLOPT_LOGIN_选项?,php,curl,libcurl,Php,Curl,Libcurl,curl有一个参数(--终端应用程序中的登录选项)。如何在php5 curl的php脚本中使用它?默认情况下,它没有CURLOPT_LOGIN_选项,并使用类似curl_setopt($ch,12345,“auth=PLAIN”)的代码;改变不会导致行为的改变。 我不会在代码中使用exec。谢谢 在PHP中,如果您想登录某台服务器,可以使用简单的设置: curl_setopt($curl,CURLOPT_USERPWD,“用户名:密码”) 下面是我如何使用它的一个示例: $cURL = curl

curl有一个参数(--终端应用程序中的登录选项)。如何在php5 curl的php脚本中使用它?默认情况下,它没有CURLOPT_LOGIN_选项,并使用类似curl_setopt($ch,12345,“auth=PLAIN”)的代码;改变不会导致行为的改变。
我不会在代码中使用exec。谢谢

在PHP中,如果您想登录某台服务器,可以使用简单的设置:

curl_setopt($curl,CURLOPT_USERPWD,“用户名:密码”)

下面是我如何使用它的一个示例:

$cURL = curl_init();
curl_setopt($cURL, CURLOPT_URL, "imaps://server.com");
curl_setopt($cURL, CURLOPT_POST, 1);
curl_setopt($cURL, CURLOPT_POSTFIELDS,
        "postvar1=value1&postvar2=value2&postvar3=value3");
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURL, CURLOPT_HTTPAUTH, CURLAUTH_ANY);
curl_setopt($cURL, CURLOPT_CONNECTTIMEOUT, 3);
curl_setopt($cURL, CURLOPT_TIMEOUT, 2);
curl_setopt($cURL, CURLOPT_USERPWD, "USERNAME:PASSWORD");
curl_setopt($cURL, CURLOPT_HTTPHEADER, array("auth=PLAIN"));
$output=curl_exec($cURL);
curl_close($cURL);
CURLOPT_USERPWD允许您登录服务器或应用程序(如果您这样设置)

如果需要代理,还有另一种方法:

curl_setopt($curl,CURLOPT_PROXYUSERPWD,“用户名:密码”)

但您还需要其他选项:

curl_setopt($cURL, CURLOPT_PROXY, '127.0.0.1'); // IP
curl_setopt($cURL, CURLOPT_PROXYPORT, '23'); // PORT
curl_setopt($cURL, CURLOPT_PROXYUSERPWD, "USERNAME:PASSWORD"); // Login

我希望这能有所帮助。

谢谢您的评论,@Farkie,但我需要实现这个命令curl--url“imaps://server.com--用户“用户名:密码”--登录选项“auth=PLAIN”curl_setopt($curl,CURLOPT_USERPWD,“用户名:密码”);类似于curl_setopt($ch,CURLOPT_USERNAME,USERNAME);curl_setopt($ch,CURLOPT_PASSWORD,PASSWORD);我需要实现这个命令curl--url“imaps://server.com--user“username:password”--登录选项“auth=PLAIN”我更新我的答案。您需要使用
auth=PLAIN
发送
CURLOPT_HTTPHEADER
,以获得此项工作。我执行你的要求。如果您不需要发送帖子信息,只需删除该部分即可