PHP function Error : Notice: Undefined offset
PHP function Error : Notice: Undefined offset
我有简单的功能,但收到错误消息:注意:未定义的偏移量:3 in
我检查了问题是否符合:$newValue += $value[$i];
以下函数的答案是“6”,但仍然显示错误消息。
<?php
function countMe($value) {
$newValue = 0;
for ($i=0; $i<=count($value); $i++)
{
$newValue += $value[$i];
}
return $newValue;
}
$value[0] = 1;
$value[1] = 2;
$value[2] = 3;
echo countMe($value);
?>
我知道解决方案只是用 @countMe($value) 等 @ 运算符抑制错误,但我想知道这个函数有什么问题??任何帮助,将不胜感激。谢谢
请注意 count($value) 的值为 3。
当您在循环中提到 <= 时,它正在尝试访问 $value[3] 但没有这样的索引可用。
您可以简单地将其更改为 <.
另一种方法是改用 foreach。这提供了更大的灵活性。
for ($i = 0; $i< count($value); $i++)
或
foreach ($value as $v) {
$newValue += $v;
}
希望对您有所帮助。
索引从 0 到 2...你的函数应该计数到 count() - 1
:
for ($i=0; $i<=count($value)-1; $i++)
或
for ($i=0; $i<count($value); $i++)
顺便说一下...只需使用 array_sum($value)
即可得到相同的结果:)
我有简单的功能,但收到错误消息:注意:未定义的偏移量:3 in
我检查了问题是否符合:$newValue += $value[$i];
以下函数的答案是“6”,但仍然显示错误消息。
<?php
function countMe($value) {
$newValue = 0;
for ($i=0; $i<=count($value); $i++)
{
$newValue += $value[$i];
}
return $newValue;
}
$value[0] = 1;
$value[1] = 2;
$value[2] = 3;
echo countMe($value);
?>
我知道解决方案只是用 @countMe($value) 等 @ 运算符抑制错误,但我想知道这个函数有什么问题??任何帮助,将不胜感激。谢谢
请注意 count($value) 的值为 3。
当您在循环中提到 <= 时,它正在尝试访问 $value[3] 但没有这样的索引可用。
您可以简单地将其更改为 <.
另一种方法是改用 foreach。这提供了更大的灵活性。
for ($i = 0; $i< count($value); $i++)
或
foreach ($value as $v) {
$newValue += $v;
}
希望对您有所帮助。
索引从 0 到 2...你的函数应该计数到 count() - 1
:
for ($i=0; $i<=count($value)-1; $i++)
或
for ($i=0; $i<count($value); $i++)
顺便说一下...只需使用 array_sum($value)
即可得到相同的结果:)