Php 只有一个数组结果显示foreach外部
在下面的代码中,我使用Php 只有一个数组结果显示foreach外部,php,arrays,foreach,Php,Arrays,Foreach,在下面的代码中,我使用var\u export来记录导入的信息,但是电子邮件仅在foreach循环外部的$values变量中显示一个对象 我怎样才能达到预期的效果 保罗: $values = []; foreach ($guests as $k => $guest) { $values[$k] = array( 'FirstName' => $guest['FirstName'], 'LastName' => $guest['LastName'], '
var\u export
来记录导入的信息,但是电子邮件仅在foreach循环外部的$values
变量中显示一个对象
我怎样才能达到预期的效果
保罗:
$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 = [];
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 ($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 = [];
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
var\u 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 $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 = [];
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(客人作为$guest)
{
$values=数组(
'FirstName'=>$guest['FirstName'],
'LastName'=>$guest['LastName'],
'Email'=>$guest['Email'],
“国家”=>$guest[“国家”],
“\u CheckIn”=>$guest['CheckIn\u date'],
“\u CheckOut'=>$guest['CheckOut\u date'”,
);
//将guestst插入联系人表
$optInEmail=$values['Email'];
$optInReason=‘购买的住宿’;
$tagID='566'//
$contactID=$infusionsoft->contacts()->addWithDupCheck($value,'Email');
$infusionsoft->contacts()->addToGroup($contactID,$tagID);
$infusionsoft->emails()->optIn($optInEmail,$optInReason);
回声';
var_dump(价值);
回声“;
}
if(空($value))
{
echo“无新数据”;
}否则{
$from=“API”;
$to=“”;
$subject=“API导入”。.date(“h:i:sa”)。.date(“d-m-Y”);
$message=var_导出($value,true);
$headers=“From:”.$From;
if(邮件($to、$subject、$message、$headers))
{
回显“已导入电子邮件发送数据”;
}否则{
呼应“什么打破了老板”;
}
老实说,我不明白这个问题是什么。请重新表述您希望预期结果是什么
请检查这部分代码
$values[] = array(
'FirstName' => $guest['FirstName'],
'LastName' => $guest['LastName'],
'Email' => $guest['email'],
'Country' => $guest['country'],
'_CheckIn' => $guest['check-in_date'],
'_CheckOut' => $guest['check-out_date'],
);
在foreach上,变量$values将被您刚刚创建的数组完全替换
mail($to,$subject,print_r($variable,true));
上面的代码将把新数组添加到$values数组。这是我通过电子邮件调试某个变量的方式 var_export正在打印对象,因为此函数无法处理引用循环/递归数组
下面是一篇关于(和var_转储的文章,也很有用).我已经用我当前和预期结果的一个示例更新了我的问题刚从stack overflow收到电子邮件,看起来我提供的信息帮助了你。恭喜。谢谢,但它仍然给了我一个结果hh,这是因为你正在覆盖$values数组。编辑foreach:
foreach($k=>$guest的来宾)
然后,在$values:中,$values[$k]=array(…)
这应该可以工作。更正我只是不能点击/思考如何修复它,但是它破坏了代码-没有特定的错误-我正在使用infusionsoft处理一个部分及其“无方法匹配参数:java.lang.String,[Ljava.lang.Object;,java.lang.String.”-我已经用我所拥有的更新了我的问题此新更改是否会出现错误?我不知道infusionsoft会做什么,但我认为这是另一个问题。