2015-06-10 21 views
0
<?php 

$arr00 = array(1,5,7); 
$arr01 = array(9,6,3,$arr00); 
$arr02 = array(4,8,12,$arr01); 

echo $length = count($arr00); 
echo "<br />"; 

echo $length1 = count($arr01); 
echo "<br />"; 

echo $length2 = count($arr02); 
echo "<br />"; 
for($i = 0; $i < $length; $i++) 
    for($j = 0; $j < $i; $j++) 
     for($k = 0; $k < $j; $k++){ 

     echo "<pre>"; 
    print_r($arr02); 
    echo "</pre>"; 

     } 


foreach ($arr00 as $value) 
    { 
     echo $value." "; 
    } 
    foreach ($arr01 as $value1) 
     { 
     echo $value1." "; 
    } 
    foreach ($arr02 as $value2) 
    { 
     echo $value2." "; 
    } 

通知:Array对字符串的转换在C:\ XAMPP \ htdocs中\ mywebpage \ 3dimns.php在线路34上 阵列4 8 12 注意:Array对字符串中的C转换:\ xampp \ htdocs \ mywebpage \ 3dimns.php on line 39 ArrayPHP通知:Array对字符串的转换错误

+0

[参考 - 这个错误在PHP中意味着什么?](http://stackoverflow.com/a/24507107) - 请包括一个问题与您的问题,而不仅仅是代码转储和隐含的调试请求。 – mario

回答

2

你的问题,从这里开始:

$arr00 = array(1,5,7); 
$arr01 = array(9,6,3,$arr00); 
$arr02 = array(4,8,12,$arr01); 

$arr01$arr02的第四个元素是一个数组,因此当您遍历这些数组并尝试将echo取出该值时,您将得到此消息的第4个迭代在循环中。

你究竟想做什么?

如果你想既阵列组合,你应该看看例如array_merge()(虽然这取决于你想如何处理重复):

$arr00 = array(1,5,7); 
$arr01 = array_merge(array(9,6,3), $arr00); 
0

这个错误是因为你的数组中有一个数组。使用此代码,而不是仅仅呼应:

if(is_string($value)) echo $value." "; 

为了显示数组的数组,你可以添加其他情况:

else var_dump($value); 
0

你应该开始寻找到如何解决这部分如此事情会更容易理清。

$arr00 = array(1,5,7); 
$arr01 = array(9,6,3,$arr00); 
$arr02 = array(4,8,12,$arr01); 

为什么不试试array_merge()$arr01这样你就可以像

$arr01 = array(9,6,3); 
$newArr1 = array_merge($arr00,$arr01); 

然后还

$arr02 = array(4,6,12); 
$newArr2 = array_merge($$arr02,$arr01); 

通过以上你会只具有3个简单的阵列处理与as

$arr00,$newArr1,$newArr2 

您现在可以轻松地执行其他代码。