foreach 循环打印键值对,同时内爆嵌套数组

foreach loop to print key value pairs while imploding the nested arrays

我正在尝试打印我们从带有 foreach 循环的表单中获取的所有键值对。问题是 $values 是嵌套数组,它只是打印数组。

我希望在维护密钥的同时将此值展平。我一直在尝试 implode(', ', $value);在循环。有没有办法做到这一点?

我当前的密码是

foreach($cleanedArray as $key => $value) {
    echo "$key: $value <br>";
}  

输出如下:

company_name: asldjfklka 
contact_name: lkdasjf;l 
contact_phone: 39085034985 
contact_email: caosdfj@gmal.com 

Notice: Array to string conversion in /Applications/MAMP/htdocs/certification-questionnaire-4.0/php/formshow.php on line 105
company_type: Array 
campaign: no 

我一直在尝试在 foreach 循环中使用 if 语句,但没有成功。

    foreach($cleanedArray as $key => $value) {
  if (is_array($value)){
     implode(', ', $value);
  } 
    echo "$key: $value <br>";
}  

我正在寻找的输出是这样的:

  company_name: asldjfklka 
  contact_name: lkdasjf;l 
  contact_phone: 39085034985 
  contact_email: caosdfj@gmal.com 
  company_type: retail, ecommerce, brickmorter
  campaign: no 

有什么想法吗?提前致谢。

如果是数组,您需要将 implode 的结果分配给变量:

foreach($cleanedArray as $key => $value) {
  if (is_array($value)){
     // here
     $value = implode(', ', $value);
  } 
  echo "$key: $value <br>";
}