trim()期望参数1为字符串,给定数组-2维数组

时间:2018-10-30 06:34:11

标签: php arrays

我有一个二维数组,我试图重新创建一个数组,除去一些引号,但出现错误

trim() expects parameter 1 to be string, array given

这是我的数组:

var_dump($my_array);

array(2) {
  [0]=>
  array(1) {
    [""Phone number""]=>
    string(15) ""+1 55526100718""
  }
  [1]=>
  array(1) {
    [""Phone number""]=>
    string(15) ""+1 55525151919""
  }
}

我试图通过遍历这样的元素来重新创建此数组

$new_array = [];
foreach($my_array as $key => $value) {
   $new_array[trim($key,'"\'')] = trim($value,'"\'');
}

我得到一个错误- trim()期望参数1为字符串,给定数组

我也试图在该数组中放入另一个数组,但后来我只得到其中只有一项的一维数组。

$new_array = [];
foreach($my_array as $value) {
    foreach ($value as $key => $val) {
        $result[trim($key,'"\'')] = trim($val,'"\'');
    }
}

但是我期望得到的结果是...(从原始数组中删除引号)

Array
(
    [0] => Array
        (
            [Phone number] => +1 55526100718
        )

    [1] => Array
        (
            [Phone number] => +1 55525151919
        )

)

2 个答案:

答案 0 :(得分:2)

尝试一下:

$new_array = [];
foreach($my_array as $k1 => $v1) {
    foreach ($v1 as $k2 => $v2) {
        $new_array[$k1][trim($k2, '"\'')] = trim($v2, '"\'');
    }
}

答案 1 :(得分:0)

您在数组中有一个数组,请尝试以下操作:

id|name      |top item
----------------------
1 |McDonalds |Burger
2 |Pizzahut  |Pizza
3 |Buger king|Null
4 |KFC       |Chicken b