警告:implode():传递的参数无效

时间:2017-02-22 11:26:05

标签: php

<?php
echo "--Array functions---";
?></br>
<?php
$numbers = [
    5   , 
    4, 
    2, 
    7,
    8, 
    'name' => [
        'jimit',
        'prashant',
        'neel'
    ]
];

foreach ($numbers as $key => $value) {
    echo implode(" ", $value);
}

我收到了数组消息警告:implode():传递的参数无效 任何解决方案请建议我

2 个答案:

答案 0 :(得分:1)

您收到错误是因为foreach ($numbers as $key => $value) { if(is_array($value)) { echo implode(" ", $value); } else { echo $value; } } 不是数组。

在impolde之前检查。

CREATE TABLE Lease (
  ResourceId varchar(64),
  Expiration datetime,
  OwnerId varchar(64),
  PRIMARY KEY(ResourceId)
);

答案 1 :(得分:0)

根据您的问题,有两种可能的解决方案。您发布的评论:

如果只想打印'name'键元素的名称,请输入以下代码:

$arr = array();
 foreach ($numbers as $key => $value) {
    if(is_array($value)) {
        foreach($value as $val){
            if($key == 'name') {
                $arr[] = $val;
            }
        }
    }
}  
echo implode(" ", $arr);

OR

如果要打印整个数组以及数字,请输入以下代码:

$arr = array();
  foreach ($numbers as $key => $value) {
        if(is_array($value)) {
            foreach($value as $val){
                $arr[] = $val;
            }
        } else {
            $arr[] = $value;
        }
    }
    echo $result = implode(" ", $arr);

希望,这可能对您有所帮助。