如何在php中用2D数组中的元素创建字符串?

如何在php中用2D数组中的元素创建字符串?,php,multidimensional-array,Php,Multidimensional Array,我有这样的2D阵列 Array ( [0] => Array ( [0] => 1 [1] => 1 [2] => 0 [3] => 1) [1] => Array ( [0] => 1 [1] => 0 [2] => 0 [3] => 0) [2] => Array ( [0] => 1 [1] => 0 [2] => 0 [3] => 0 我想要的是将所有这些元素打印为一个字符串。也就是说,要

我有这样的2D阵列

Array ( [0] => Array ( [0] => 1 [1] => 1 [2] => 0 [3] => 1)   [1] => Array ( [0] => 1 [1] => 0 [2] => 0 [3] => 0)   [2] => Array ( [0] => 1 [1] => 0 [2] => 0 [3] => 0
我想要的是将所有这些元素打印为一个字符串。也就是说,要打印
“110110001000”

我试过这样的东西

for ($x = 0; $x < $this->smallersize; $x++) {
    for ($y = 0; $y < $this->smallersize; $y++) { 

         $myarray[$x][$y] = ($dct[$x][$y] >= $avg?"1":"0");    

        }
} 
return join('',$myarray);
for($x=0;$x<$this->smallersize;$x++){
对于($y=0;$y<$this->smallersize;$y++){
$myarray[$x][$y]=($dct[$x][$y]>=$avg?“1”:“0”);
}
} 
返回联接(“”,$myarray);
我想打印的是
“110110001000”
我的问题是,当我尝试上述函数时,它给出了一个

错误:“返回联接(“”,$myarray);”行中的“数组到字符串转换”


如何解决这个问题?

您需要使用
内爆
数组\u map

$array = Array(Array(1,1,0,1),Array(1,0,0,0),Array(1,0,0,0));
$result = array_map('implode',$array);
echo implode($result);//11011000100010
使用
foreach
作为

foreach($array as $key => $value){
    foreach($value as $v){
        echo $v;
    }
}

正如我所理解的:您需要按顺序追加数组的所有元素

$str = "";

for ($i = 0; $i<sizeOf($array); $i++)
{
    for ($j=0; $j<sizeOf($array[$i]); $j++)
    {
        $str .= $array[$i][$j];
    }
}

echo $str;
$str=”“;

对于($i=0;$i可能这回答了你的问题:这给了我类似的东西。数组([0]=>11010010[1]=>10000011[2]=>10001000[3]=>00110100[4]=>10011000[5]=>011001001[6]=>10010000[7]=>10010010010011)。我想附加所有这些结果。我真的很抱歉,你说过“使用内爆两倍于数组映射或我现在看到了。现在它可以工作了。谢谢。@Uchiha你可以使用
echo introde($result);
array\u map
+1非常感谢。这也很好。但是@Uchiha首先回答了这个问题。所以我选择了这个答案作为被接受的答案。但是我选择了你的答案作为有用的答案。再次感谢亲爱的:)我是新来的,所以我遇到了一些错误“代码未格式化”,这不允许我提交,我提交有点晚了:/我很高兴我帮助了你:)