PHP变量值在For Else语句中意外更改

时间:2018-01-19 17:03:23

标签: php if-statement

在下面的循环中,第一个var_dump是int(2)。在最后一个var_dump中,值为int(0)。我不明白$ total_gals值的变化。

<?php
$total_gals  = count( glob("images/*", GLOB_ONLYDIR) ); 
$loadnum = 0;
var_dump($total_gals);
if ($total_gals = 0) {
    echo "<script>alert('No Galleries to Load');</script>";
    var_dump($total_gals);
} elseif ($total_gals > 5) {
    $loadnum = 5;
} else {
    $loadnum == $total_gals;
}
var_dump($total_gals);
?>

2 个答案:

答案 0 :(得分:0)

首先,如果您将total_gals重新分配给0,这显然是真实的陈述

   if ($total_gals = 0) {

答案 1 :(得分:0)

因为if ($total_gals = 0) {需要if ($total_gals == 0) {

如果没有第二个=你将0赋值给if语句总是求值为true的变量。