<?php
$hostname = '{imap.gmail.com:993/imap/ssl}INBOX';
$username = '[email protected]';
$password = '********** ';
$inbox = imap_open($hostname,$username,$password);
$emails = imap_search($inbox,'FROM "[email protected]"');
foreach ($emails as $e){
$overview = imap_fetch_overview($inbox,$e,0);
$message = imap_fetchbody($inbox,$e,1);
echo $message
}
?>
Когда я попытался запустить вышеуказанный код, он выглядит так:
Год: 1996 Марка: Mercury Модель: Villager Привод: Автоматический Двигатель: 3.6 - 6 Цилиндры ----------------------------- Часть: Трансмиссия ----------------------------- Имя: ABCD Телефон: Текст: Нет Электронная почта: [email protected] Местоположение: xyz, 123456 Примечания: Хорошая перестроенная передача
Ниже представлен фактический формат, который мне нужен, и который тот же самый в gmail:
Год выпуска: 1996
Сделать: Меркурий
Модель: Villager
Привод: автоматический
Двигатель: 3.6 - 6 Цилиндры
Часть: Передача
Имя: ABCD
Телефон:
Текст: Нет
Электронная почта: [email protected]
Расположение: xyz, 123456
Примечания: Хорошая перестроенная передача
Используйте функцию nl2br: "Возвращает строку с '<br/>'
или '<br>'
вставленную перед всеми новыми строками (\r\n
, \n\r
, \n
и \r
)."
Т.е. заменить echo $message
на echo nl2br( $message )
.
<textarea>
HTML <textarea>
?) Эта функция вам не нужна. Разрывы строк будут показаны автоматически. Просто используйте функцию для просмотра содержимого базы данных (не в форме).
Я предполагаю, что ваш тело письма содержит символы возврата каретки (\n
). Они не будут отображаться как таковые в браузере.
Чтобы исправить это, проще всего изменить команду echo
:
echo $message.'<br/>'
Это приведет к сложному перерыву после каждой строки
echo
.