PHP布尔值到字符串的转换意外

xriantvc  于 2023-03-28  发布在  PHP
关注(0)|答案(1)|浏览(139)

基本上,我设置了一个标志,告诉我是否在foreach循环中遇到了一个条件:

ANOTHER FOREACH IF IT CAN HELP WRAPS THIS CYCLE THRU ALL COLUMNS
            $flag = true;
            foreach ($column as $key=>$val) {
                if ($key == 0) {
                    echo 'cod: ' . $val . '---' . (string)$flag;
                }
                if ($key == 3 && $val != "" && $val != null) {
                    $flag = false;
                    echo 'Img: ' . $val  . '-------'  . (string)$flag;
                }
                //un altro array togliendo i non pubblicati
                if ($key == 8 && $val != 0 && $val != null) {
                    $flag = false;
                    echo 'pub: ' . $val  . (string)$flag;
                }
            }
            if(!$flag) {
                $datarrayo[] = $column;
            }

正如你所看到的,我注入了一个回声,每一个检查只是为了确保我有麻烦,是的,我是。两个检查:

if ($key == 3 && $val != "" && $val != null) {
                $flag = false;
                echo 'Img: ' . $val  . '-------'  . (string)$flag;
            }

1)将flag设置为false??
2)它打印图像“http://value.jpg“------- 1
是:1,所以$flag = false不起作用

hiz5n14c

hiz5n14c1#

正如用户@Dxg125指出的,实际上$flag是false,只是使用它的字符串值等于1。
所以$bool = false == '1'显然。
只需要使用json_encode打印一个布尔值

相关问题