在下面的代码中,我使用var_export
来记录正在导入的信息,但电子邮件仅显示foreach循环外的$values
变量中的一个对象。只有一个数组结果显示外部foreach
我该怎么做才能获得预期的效果?
保罗:
$values = [];
foreach ($guests as $k => $guest)
{
$values[$k] = array(
'FirstName' => $guest['FirstName'],
'LastName' => $guest['LastName'],
'Email' => $guest['email'],
'Country' => $guest['country'],
'_CheckIn' => $guest['check-in_date'],
'_CheckOut' => $guest['check-out_date'],
);
电子邮件结果:
array (
'FirstName' => 'Test 1',
'LastName' => 'Test 2',
'Email' => '',
'Country' => 'New Zealand',
'_CheckIn' => '2017-04-25',
'_CheckOut' => '2017-04-27',
)
预期的电子邮件结果 - 按$values
var_dump
array (
'FirstName' => 'Test 1',
'LastName' => 'Test 2',
'Email' => '',
'Country' => 'New Zealand',
'_CheckIn' => '2017-04-25',
'_CheckOut' => '2017-04-27',
)
array (
'FirstName' => 'Test 1',
'LastName' => 'Test 2',
'Email' => '',
'Country' => 'New Zealand',
'_CheckIn' => '2017-04-25',
'_CheckOut' => '2017-04-27',
)
array (
'FirstName' => 'Test 1',
'LastName' => 'Test 2',
'Email' => '',
'Country' => 'New Zealand',
'_CheckIn' => '2017-04-25',
'_CheckOut' => '2017-04-27',
)
代码:
$values = [];
foreach ($guests as $guest)
{
$values = array(
'FirstName' => $guest['FirstName'],
'LastName' => $guest['LastName'],
'Email' => $guest['email'],
'Country' => $guest['country'],
'_CheckIn' => $guest['check-in_date'],
'_CheckOut' => $guest['check-out_date'],
);
//inserting guestst to Contact table
$optInEmail = $values['Email'];
$optInReason = 'Purchased Accommodation';
$tagID = '566'; //
$contactID = $infusionsoft->contacts()->addWithDupCheck($values,'Email');
$infusionsoft->contacts()->addToGroup($contactID, $tagID);
$infusionsoft->emails()->optIn($optInEmail, $optInReason);
echo '<pre>';
var_dump($values);
echo "</pre>";
}
if(empty($values))
{
echo '<h1>No new Data</h1>';
}else{
$from = "API";
$to = "";
$subject = "API Import"." ".date("h:i:sa")." ".date("d-m-Y");
$message = var_export($values, true);
$headers = "From:" . $from;
if(mail($to,$subject,$message, $headers))
{
echo '<h1>E-mail Sent Data Imported</h1>';
}else{
echo "What Broke Boss";
}
谢谢,但它仍然给我单个结果 –
哦,这是因为你正在覆盖$ values数组。 编辑的foreach: '的foreach($宾客$ K => $客人)' 然后,在$值: '$值[$ K] =阵列(...)' 这应该工作。 –
正确我只是不能点击/过度思考如何解决它 –