2016-08-02 4 views
2

현재 응용 프로그램에서받은 전자 메일을 확인하기 위해 Mailgun을 사용하고 있습니다. 지금까지 이메일의 수신자, 발신자 및 본문을 가져올 수 있습니다. 그러나 주제가 아닙니다.Laravel and Mailgun : 수신 전자 메일 제목

$recipient = $request->input('recipient'); <-- Working 
$sender = $request->input('sender'); <-- Working 
$body = $request->input('body-html'); <-- Working 
$subject = $request->input('subject'); <-- Not Working 

내가 메시지 헤더에있는 피사체 볼 수 있습니다 : 다음

$headers = $request->input('message-headers'); 

를 반환

이는 is_array을 통해 배열이지만 실행 것으로 보인다
[["Received", "by luna.mailgun.net with SMTP mgrt 8734663311733; Fri, 03 May 2013 18:26:27 +0000"], ["Content-Type", ["multipart/alternative", {"boundary": "eb663d73ae0a4d6c9153cc0aec8b7520"}]], ["Mime-Version", "1.0"], ["Subject", "Test deliver webhook"], ["From", "Bob <[email protected]>"], ["To", "Alice <[email protected]>"], ["Message-Id", "<201305[email protected]>"], ["X-Mailgun-Variables", "{\"my_var_1\": \"Mailgun Variable #1\", \"my-var-2\": \"awesome\"}"], ["Date", "Fri, 03 May 2013 18:26:27 +0000"], ["Sender", "[email protected]"]] 

, false를 반환합니다. 내가 시도

코드 :

foreach($headers as $header) { 
    if($header[0] == 'Subject') { 
     $subject = $header[1]; 
    } 
} 
return $subject; 

RETURNS : foreach는 대한 공급 ErrorException 잘못된 인수()는

+2

아마'메시지 headers'는 JSON 문자열입니다. foreach에서 사용하기 전에'json_decode'를 사용해보십시오. – Jerodev

답변

0
$subject = null; 
foreach ($data as $header) { 
    if ($header[0] == 'Subject') { 
     $subject = $header[1]; 
     break; 
    } 
} 
관련 문제