Включить результат цикла Foreach в переменную в PHP? (для функции mail ()) - PullRequest
3 голосов
/ 09 сентября 2009

Я француз, поэтому я не очень хорошо говорю по-английски.

Я пытаюсь "поместить" результат цикла foreach в переменную, подобную этой:

$msg = '<html><head>
        <title>Commande de photos</title>
 </head><body>
        <p>Voici la liste des photos demand&eacute;es :<br />
 <ul> HERE I WANT TO "PUT" THE RESULT OF THE FOREACH LOOP</ul>';

Вот мой цикл foreach:

foreach($tab as $val){
echo('<li>'.$val.'</li>');
}

Затем $msg введите в состав функции mail() следующим образом:

mail($destinataire,$sujet,$msg,$headers);

Так, как я могу сделать это, чтобы включить результат foreach в сообщение, потому что у меня уже есть ошибка?

Ответы [ 4 ]

4 голосов
/ 09 сентября 2009
$msg = '<html><head><title>Commande de photos</title></head><body><p>Voici la liste des photos demand&eacute;es :</p><ul>';
foreach($tab as $val){
     $msg .= '<li>' . $val . '</li>';
}
$msg .= '</ul>';
mail($destinataire,$sujet,$msg,$headers);

Хитрость здесь в том, что оператор объединения =. Например:

$x = 'abc';
echo $x; // echoes 'abc'
$x .= 'def';
echo $x; // echoes 'abcdef'
2 голосов
/ 09 сентября 2009

Как так?

$list = '';
foreach($tab as $val){
    $list .= '<li>'.$val.'</li>';
}

$msg = '<html><head>
    <title>Commande de photos</title>
</head><body>
    <p>Voici la liste des photos demand&eacute;es :<br />
<ul>'.$list.'</ul>';

mail($destinataire,$sujet,$msg,$headers);
0 голосов
/ 25 сентября 2009

Не так много ответов, но ответ davethegr8 работал на меня! Я пытаюсь интегрировать свою первую систему php-шаблонов с помощью Savant3, и это помогает отделить всю логику от файла шаблона. Спасибо!

0 голосов
/ 09 сентября 2009
ob_start();
// here your loop echo'ing stuff
$content = ob_get_clean();

См. Справочные страницы php для получения дополнительной информации о функциях ob_ *

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