所以我尝试使用嵌套循环创建函数,如果在其中但是当我尝试打开文件时它不会显示任何内容..这是我的代码
<?php
$result[0] = "no";
$condition[0] = "yes";
function cek() {
for ($i=0; $i<2; $i++) {
if ($result[$i] == "no") {
for ($i=0; $i<2; $i++) {
if ($condition[$i] == "yes") {
echo ("means yes");
break;
}
else {
echo ("means no");
break;
}
}
}
}
}
cek();
?>
任何帮助将不胜感激。谢谢
答案 0 :(得分:1)
以下是执行代码的结果:
$ php test.php
PHP Notice: Undefined variable: result in /home/.../test.php on line [...]
PHP Notice: Undefined variable: result in /home/.../test.php on line [...]
关注线是:
if ($result[$i] == "no")
变量$result
和$condition
在函数中未定义,您必须作为参数传递给函数或使用global(在这种情况下应该避免)。
此外,此循环也将失败:
for ($i=0; $i<2; $i++)
实际上,“2”不是$condition
(或$result
)的大小。您可以改用sizeof($condition)
或count($condition)
。
最后,你不应该在两个嵌套循环中使用相同的增量($i
)。
此代码可以使用:
<?php
$result = array("no");
$condition = array("yes");
function cek(array $result, array $condition) {
for ($i=0; $i<sizeof($result); $i++) {
if ($result[$i] == "no") {
for ($j=0; $j<sizeof($condition); $j++) {
echo "means " . (($condition[$i] == "yes") ? "yes" : "no");
break;
}
}
}
}
cek($result, $condition);
但我不确定这正是你要做的事情;)