Почему \ n не работает над одной строкой моего PHP-скрипта, но хорошо для всех остальных? - PullRequest
5 голосов
/ 16 января 2012

Я пишу электронное письмо, которое будет отправлено при отправке формы. По какой-то причине символ \n отображается правильно во всех строках, кроме одной. Я не вижу никакой разницы между этой строкой и другими, поэтому не могу понять, почему она не работает. Код ниже, вместе с выводом, который я получаю, а также список используемых переменных.

Как видно из электронного письма, \n в конце строки «Рабочий адрес» не работает, поэтому «Название компании» просто следует прямо, а не находится на следующей строке. Тогда \n после названия компании работает нормально, поэтому домашний адрес находится на следующей строке.

Вот код сообщения:

$xmsg = "First Name: $firstname\n" .
        "Last Name: $lastname\n" .
    "Work Tel: $worktel\n" .
    "Home Tel: $hometel\n" .
    "Mobile Tel: $mobtel\n" .
    "E-mail: $email\n" .
    "Work Address: $workad\n" .
    "Company Name: $company\n" .
    "Home Address: $homead\n" .

Вот вывод:

First Name: Joe
Last Name: Bloggs
Work Tel: 0123456789
Home Tel: 0987654321
Mobile Tel: 0789456123
E-mail: joe.bloggs@jb.co.uk
Work Address: Bloggoffice, Joe Street, London, N1 J0E Company Name: 
Home Address: 9 Blogg Street, Borough of Joe, London, SE4 J03

И в случае, если это полезно, вот список используемых переменных:

$firstname = $_SESSION['firstname'];
$lastname = $_SESSION['lastname'];
$worktel = $_SESSION['worktel'];
$hometel = $_SESSION['privtel'];
$mobtel = $_SESSION['mobtel'];
$email = $_SESSION['email'];
$company = $_SESSION['companyname'];
$workad = $_SESSION['workad1'] . ', ' . $_SESSION['workad2'] . ', ' .     $_SESSION['workad3'] . ', ' . $_SESSION['workpostcode'];
$homead = $_SESSION['homead1'] . ', ' . $_SESSION['homead2'] . ', ' . $_SESSION['homead3'] . ', ' . $_SESSION['homepostcode'];

Буду благодарен за любую помощь, надеюсь, я упустил из виду не просто глупую ошибку!

1 Ответ

1 голос
/ 17 января 2012

Использование константы PHP_EOL кажется более правильным, чем использование \n. Потому что PHP_EOL является правильным символом конца строки для каждой платформы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...