2011-07-14 192 views
2

我不知道爲什麼我收到一個未定義偏移通知在此:PHP未定義偏移()

<?php 

$numbers = array('1','2','3'); 
$total = 0; 

for($i=0;$i<=sizeof($numbers); $i++) { 
    $total += $numbers[$i]; 
    echo $total; 
} 

?> 

輸出:

注意:未定義抵消:3在E:\ php \ arrays \ array_1.php上 第17行

回答

5

你的數組索引0,1三個要素2.有與指數沒有元素3.

它擊中之前,您的循環應該停止......

for($i=0;$i<sizeof($numbers); $i++) { 
} 

此外,結賬array_sum,這可能是你想反正什麼...

$total=array_sum($numbers); 
1

您應循環到<數組的大小,而不是<=

for($i=0;$i<sizeof($numbers); $i++) { 
0

來回更改條件m <=<

這將適當加:

$total += intval($numbers[$i]); 
0

倒胃口HTML錯誤

error_reporting(E_ALL); 
ini_set('display_errors', 'On'); 
ini_set('html_errors', 'Off');