为什么$ k每次循环都会将自身重置为零?
$fruit = array ( “orange”, “apple”, “grape” );
$testvar = “no”;
while ( $testvar != “yes” ) {
$k = 0;
if ($fruit[$k] == “apple” ) {
$testvar = “yes”;
echo “apple\n”;
} else {
echo “$fruit[$k] is not an apple\n”;
}
$k++;
}
答案 0 :(得分:2)
您正在$k
循环中初始化变量while
。
while ( $testvar != “yes” ) {
$k = 0;
每次都会重置其值,直到while条件失败。在$k
循环之前初始化while
,以便它的值只初始化一次,如
$k = 0;
while ( $testvar != “yes” ) {
答案 1 :(得分:2)
问题是每次while循环运行时都要创建一个新变量。如果你在while循环之前放置$k
,那么你将能够增加它并获得while循环执行次数的准确视图。
注意PHP只有函数作用域,因此在此循环结束后$k
仍然可用。