PHP未定义的偏移量数组错误
问题描述:
我为这个任务做了这个数组,但是我不太明白。我需要做的是从我的数组中识别出一个字符串,并在“我正在学习它”时打印出来。我觉得我很接近,但我一直在获取未定义的偏移量。PHP未定义的偏移量数组错误
$myArray = array ("C ", "Java", "C++ ", "Objective-C", "C#", "PHP","(Visual)
Basic", "Python", "JavaScript", "Perl", "Ruby",
"PL/SQL", "Delphi/Oject pascal","Visual Basic.Net",
"lisp", "Pascal", "Ada", "Transact-SQL", "Logo", "NXT-G");
for ($i = 0; $i<sizeof($myArray); $i++)
echo $myArray[$i];
if($myArray[$i] == "C") {
echo "I'm learning this too!";
}
else {
echo "Your not learning anything";
}
答
你缺少括号内为for loop
$myArray = array ("C ", "Java", "C++ ", "Objective-C", "C#", "PHP","(Visual)
Basic", "Python", "JavaScript", "Perl", "Ruby",
"PL/SQL", "Delphi/Oject pascal","Visual Basic.Net",
"lisp", "Pasca", "Ada", "Transact-SQL", "Logo", "NXT-G");
for ($i = 0; $i< sizeof($myArray); $i++)
{
echo $myArray[$i]."<br>";
if($myArray[$i] == "C") {
echo "I'm learning this too!";
}
else {
echo "Your not learning anything";
}
}
+0
这个修正了它,我看到我出错了,谢谢! –
答
你错过了花括号在for循环。
for for循环执行多次for命令后的单个指令。如果你想要做多的事情,你需要将它们用括号{}
for ($i = 0; $i<sizeof($myArray); $i++)
{
echo $myArray[$i];
if($myArray[$i] == "C")
{
echo "I'm learning this too!";
}
else
{
echo "Your not learning anything";
}
}
尝试合并成块,并紧贴你的块的布局形式,否则它很难注意到,当你的括号不正确连接。
除非使用'for'循环是强制性的,你可以使用['in_array'](http://php.net/manual/en/function.in-array.php)显式循环。 –