PHP如何在变量中拆分数组
Posted
技术标签:
【中文标题】PHP如何在变量中拆分数组【英文标题】:PHP how to split an array in variables 【发布时间】:2013-08-09 21:08:53 【问题描述】:大家好,我需要帮助!一周前我开始学习php。 我有一个为联系人发布一些文本字段的表单,我需要将数组拆分为一些变量以放入电子邮件中。这是我的代码
$field = $_POST['input'];
if ( isset( $field ) === TRUE)
foreach ($field as $key => $value)
echo '<pre>' , print_r( $value ) , '</pre>'; //to list the array
$to = $mail;
$sbj = "thanks to register to $site";
..//some headers
mail($to,sbj,$headers)
这是表格
<form action="upload.php" method="POST">
<input type="text" name="input[]">
<input type="text" name="input[]">
<input type="text" name="input[]">
<input type="submit" value="invia">
</form>
对检索数组上的变量以包含在邮件中的任何建议?
【问题讨论】:
【参考方案1】:@John 给出了正确的程序。您可以使用array_push() 函数来使用另一个过程,例如:
$field = $_POST['input'];
$info = array();
foreach ($field as $key => $value)
array_push($info,$value);
// echo implode(",",$info);
$to = $mail;
$sbj = "thanks to register to $site";
$body = implode(",",$info);
..//some headers
mail($to,sbj,$body,$headers)
【讨论】:
使用 input type="file" 输入是一样的吗?【参考方案2】:您可以使用implode() 函数,它接受一个数组和一个分隔符,并将数组的元素连接成一个字符串,每个元素由您传递的分隔符字符串分隔,例如:
foreach($field as $key=>$value)
$input[] = $value;
$body = implode("\n",$input); //implode here
$to = $mail;
$sbj = "thanks to register to $site";
..//some headers
mail($to,sbj,$body,$headers)
这将在电子邮件的单独一行中创建您的输入列表。
【讨论】:
【参考方案3】:最简单但最丑陋的方法就是使用:
mail($to,sbj,print_r($field, true),$headers);
print_r($field, true)
会将值输出到变量中,而不是立即打印出来。
【讨论】:
以上是关于PHP如何在变量中拆分数组的主要内容,如果未能解决你的问题,请参考以下文章