我有一个返回数组的函数
[0]=>
array(2) {
[0]=>
string(2) "22"
[1]=>
string(9) "Plantroom"
}
[1]=>
array(2) {
[0]=>
string(2) "22"
[1]=>
string(4) "dfdf"
}
}
有时我的数组有一个或多个对象。
[0]=>
array(2) {
[0]=>
string(2) "23"
[1]=>
string(4) "sec"
}
}
现在我想以逗号分隔显示我的数组数据。
喜欢
for first array => Plantroom,dfdf
表示第二个数组=>秒
我正在使用此代码但无法正常工作
我的功能
function area_name($game_id)
{
include_once('Model/Game.php');
$c2 = new Game();
$cd2 = $c2->Select_area($game_id);
return $cd2;
}
并将我的功能称为
implode(", ", area_name($cd[$i][0]))
但我的输出显示文字数组
答案 0 :(得分:1)
因为area_name()
不只是返回一个数组,它返回一个数组数组。 implode()
将加入area_name()
返回的数组元素,假设它们是字符串,但这些元素也是数组,因此它们被字符串化为文本"Array"
。
要从implode()
获得所需的输出,您必须首先生成一个数组,其中只包含area_name()
返回的结构所需的值。
例如:
$data = array_map(function ($a) { return $a[1]; }, area_name($cd[$i][0]));
echo implode(', ', $data);