0

$status は 0 を返しますが、ループはその "1" のように動作します。ここで面白いのは、「MySQL DB is in use (status 0)」というエラー メッセージです。

言い換えれば、私の if ステートメントは true であっても失敗します。

どこが間違い?

include 'status_check.php'; //it takes $check from MySQL DB
if($status = "0") { //if status is 0 go on
    include 'status_1.php'; //set status to 1
            ...
    include 'status_0.php'; //after finished operation set status back to 0
} else { //if status is 1 say that its 1
    echo "MySQL DB is in use (status ". $status .")";
    die;
}
4

1 に答える 1

17

比較ではなく、割り当てています。

if($status = "0") {

==比較のために作ってください。

文字列 "0" は PHP で "偽" の値として扱われるため、これは false です。ドキュメント: http://php.net/boolean#language.types.boolean.casting

于 2012-05-03T14:07:30.723 に答える