关于登录Gmail并显示收件箱和获取联系人等的信息,但是我不知道如何将电子邮件本身放入变量中,以便我可以在PHP中使用它。
这是我所拥有的:
function inbox($username, $password){
$url = "https://mail.google.com/mail/feed/atom";
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_USERPWD, $username . ":" . $password);
curl_setopt($curl, CURLOPT_HTTPAUTH, CURLAUTH_BASIC);
curl_setopt($curl, CURLOPT_ENCODING, "");
$curlData = curl_exec($curl);
curl_close($curl);
return $curlData;
}
//calling the function
$em = "email@gmail.com";
$pw = "pass";
$feed = inbox($em, $pw);
$x = new SimpleXmlElement($feed);
echo "<ul>";
foreach($x->entry as $msg){
//extracting the link to the message from xml
$href = $msg->link->attributes()->href;
//create a link to the message and display title, summary
echo "<li><a href="".$href."">".$msg->title."</a><br />".$msg->summary."</li>";
}
echo "</ul>";
现在,当我单击刚刚创建的链接时,它只会在gmail中打开邮件。我想访问字符串/变量中消息的 html。我尝试了各种各样的事情。我尝试将消息链接转发到另一个页面以 curl 打开,但谷歌没有向我显示消息,而是发送了一些带有另一个消息链接的 html。如果在浏览器中再次单击该链接,则会在gmail中打开,但是如果我尝试第三次卷曲到此链接,则会显示一个空白页。
关键是,我的工作服务器没有启用 imap/pop,而 cURL 是我所知道的可以实现这一目标的最后想法。
我最终远程使用 imap,然后将其退回到有问题的服务器。我已经确定gmail不允许通过cURL发送邮件,这是谷歌的事情之一,例如他们不允许框架等