2012-03-08 12 views
28

Mam problem z wysłaniem plain text e-mail, wszystkie moje znaki końca linii są ignorowane (nie HTML!):Dodawanie linii przerwy na text/plain email

->setBody('Did you request a password reset for your account?\r\n\r\nIf yes, click here:\r\nhttp://www.website.com', 'text/plain'); 

Powyższe jest wyświetlany w e-mail jako:

Czy poprosić o zresetowanie hasła do konta \ r \ n \ r \ nW tak, kliknij tutaj: \ nhttp: //www.website.com

Sprawdziłem i nagłówek jest pozornie prawidłowo ustawione:

Content-Type: text/plain; charset=utf-8

Czy ktoś ma jakieś doświadczenia z tym?

+1

@John To nie jest właściwa odpowiedź w tej sytuacji. –

Odpowiedz

18

Używasz dosłowne ciągi. Jeśli chcesz dodać podziały wiersza, użyj podwójnego cudzysłowu zamiast pojedynczego cudzysłowu.

->setBody("Did you request a password reset for your account?\r\n\r\nIf yes, click here:\r\nhttp://www.website.com", 'text/plain'); 
+0

Chociaż @silly pobiło Cię o kilka sekund, faktycznie podajesz powód, dlaczego nie działa. Powinienem zaznaczyć, że twój jest poprawny na początek. –

54

użyć cudzysłowów podobnych

->setBody("Did you request a password reset for your account?\r\n\r\nIf yes, click here:\r\nhttp://www.website.com", 'text/plain');