我使用gmail api,当我试图从特定消息中获取“From”字段时,我得到的是名称部分,但不是地址。下面是在的oauth2操场工程查询:Gmail api响应标题 - 获取尖括号中所包含的信息(php库)
它输出:
{
"payload": {
"mimeType": "multipart/mixed",
"headers": [
{
"name": "From",
"value": "First Last <[email protected]>"
}
]
},
"sizeEstimate": 180758
}
实现在PHP中相同的查询:
function getMessage($service, $userId, $messageId) {
try {
$optParamsGet = array();
$optParamsGet['format'] = 'metadata';
$optParamsGet['metadataHeaders'] = 'From';
$optParamsGet['fields'] = 'payload,sizeEstimate';
$message = $service->users_messages->get($userId, $messageId, $optParamsGet);
print 'Message with ID: ' . $message->getId() . ' retrieved.<br>';
return $message;
} catch (Exception $e) {
print 'An error occurred: ' . $e->getMessage();
}
}
$message2 = getMessage($service,$userId,$message_id);
if ($message2->getPayload()) {
$headers = $message2->getPayload()->getHeaders();
foreach ($headers as $header) {
if ('From' == $header->name) {
$name_value = $header->value;
echo $name_value . "<br>";
array_push($sendernames,$name_value);
echo $header['value']. "<br>";
break;
}
}
}
var_dump($headers);
而现在,做一个返回的$消息中头部的var_dump不显示尖括号内的电子邮件地址。我如何得到这个?
头如果你'将值直接回显到一个HTML文档,你会想通过'htmlspecialchars()'来管它,例如'echo htmlspecialchars($ name_value)' – Phil 2014-10-20 02:39:55
是的!谢谢。 – user3200528 2014-10-20 02:53:54