Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/257.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 有没有一种方法可以将数组数据直接格式化为文本电子邮件正文中使用的变量?_Php_Arrays_Email - Fatal编程技术网

Php 有没有一种方法可以将数组数据直接格式化为文本电子邮件正文中使用的变量?

Php 有没有一种方法可以将数组数据直接格式化为文本电子邮件正文中使用的变量?,php,arrays,email,Php,Arrays,Email,我有一个数组,用于收集传递的问题字符串: $myQuestionsPass = array ( " Question 1 passed! " ); if ( $isQ2 == Yes ) { $myQuestionsPass[] = " Question 2 passed! " ; } 在这个数组填充了传递数据并填充数组的问题之后,我想将$myQuestionsPass的所有数组数据直接转储到文本邮件中,并将其列在基于文本的电子邮件中,如下所示: Email output- Congrats

我有一个数组,用于收集传递的问题字符串:

$myQuestionsPass = array ( " Question 1 passed! " );
if ( $isQ2 == Yes ) {
$myQuestionsPass[] = " Question 2 passed! " ;
}
在这个数组填充了传递数据并填充数组的问题之后,我想将
$myQuestionsPass
的所有数组数据直接转储到文本邮件中,并将其列在基于文本的电子邮件中,如下所示:

Email output- Congrats
Question 1 passed!
Question 2 passed!
and so on....
这就是我所拥有的,它做了所有的事情,除了它没有将每一条数据分离到基于文本的电子邮件正文中新的下一行。。。(
echo
print\r
返回我不想要的屏幕,
foreach
一路循环,当我试图将变量传递给邮件程序时,它只显示分配给
$myQuestionsPass
的数组中的最后一个问题)

我的邮件

$body = "Email output- Congrats
         $myQuestionsPass"
结果显示一封文本电子邮件,如下所示:

Email output- Congrats
Question 1 passed! , Question 2 passed! , Question 3 passed! , Question 4 passed! , and so on....
而不是我想要的阵列显示:

Email output- Congrats
Question 1 passed!
Question 2 passed!
Question 3 passed!
so on....
如果我尝试使用换行标记和换行符(br),它们会在电子邮件中显示为文本


如果有任何帮助,我将不胜感激,我已经搜索了一段时间,这是出于沮丧而发布的!提前感谢您的建议!

我不确定我是否完全理解,但您想在电子邮件中输出阵列吗

$body="Email output- Congrats\n";
foreach ($myQuestionsPass as $questionPass) {
     $body.=$questionPass."\n";
}
mail("steve@example.com","Results",$body);

这个代码怎么不适用于您呢?
\n
将添加换行符,
=
将问题答案连接到电子邮件正文。

您是否尝试过这样做:?我猜可能Steve在他的换行符上使用了单引号,而不是双引号。请确保其
“\n”
不是
“\n”
——有几次我被它抓住了,呵呵。否则我无法想象换行符不起作用。@TheManiac是的,我想他可能在那里用了单引号,回来发表评论!谢谢你,我不确定我做错了什么,但我删除了我的代码,重新开始,foreach工作了。我感觉很好umb,但谢谢你帮我度过难关!我在这里欢呼!
$body="Email output- Congrats\n";
foreach ($myQuestionsPass as $questionPass) {
     $body.=$questionPass."\n";
}
mail("steve@example.com","Results",$body);