2015-06-10 41 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 

您現在可以輕鬆地執行其他代碼。