Ja, det fungerar. :)
En liten förklaring till hur if-satser fungerar:
If-satser baseras helt och hållet på true och false, en if-sats blir, efter att alla jämförelser har gjorts, så här:
if(true)
Eller:
if(false)
Beroende på jämförelserna var sanna eller falska. Jämförelseoperatorer som används är:
==
!=
<
>
===
!==
>=
<=
Variabeln/värdet till vänster om operatorerna jämförs med variabeln/värdet till höger om operatorerna, och om jämförelsen returnerar sant - dvs. om uttrycket är sann, blir if-satsen sann och koden innan för blocket körs. För att göra fler än en jämförelse så finns operatorerna:
&&
||
and
or ( Plus ett par bitvis-operatorer som jag inte tar upp nu )
Dessa gör att fler uttryck kan jämföras i en if-sats.
Exempel:
if( "SPiN" == "SPiN" && 1 == 1 )
PHP läser av det så här, i den här ordningen:
"SPiN" == "SPiN" ger true
1 == 1 ger true
true && true ger true ->
if( true )
Alltså körs blocket efter if-satsen. Här kommer en viktig del: &&-operatorn ( Som är detsamma som 'and'-operatorn ) visar för PHP att båda jämförelserna måste generera true för att hela uttrycket ska bli sant. Använder man || ( Som är detsamma som 'or'-operatorn ) visar man för PHP att endast ett av uttrycken måste vara sant för att hela uttrycket ska bli sant.
If-satsen:
if( isset( $blä ) && $blä == "kukkuu" )
Funktionen isset() returnerar endast true eller false, vilket kan jämföras med en jämförelseoperator.
Ordningen som PHP läser koden i blir:
isset( $blä ) => true
$blä == "kukkuu" => true
if( true && true ) => if( true )
Alltså körs koden innanför blocket.
Hoppas att någon blev klokare på if-satser nu, jag blev bara snurrig. :e