How can I toggle a boolean number?

Here is my code:

$num = 1; // it always is either 0 or 1

if ( $num == 1 ){
    $num = 0
} else {
    $num = 1;
}

As you see, my code toggles the number. It is really ugly to me. I guessed php should has a function to do so. But I didn't find anything similar after some searches. Anyway, can I do that more standard and better?

Currectly I'm coding for a great company. That's why I want to write clean and professional codes.

1 answer

  • answered 2017-06-17 18:40 Shafizadeh

    Your approach is correct and will work as well. Just you need to wrap it into a function. Another way is using ^ (Bitwise XOR) to do that functional and more clean:

    function toggleNumber( $num ) {
        return $num ^= 1;
    }
    

    Online Demo


    That function gets the number and does XOR with 1 on it. Then the number will be toggled.