Variable position in comparision in PHP
Which is more optimized between 2 case below?
if ($var == 'value') {}
and
if ('value' == $var) {}
Sorry if this is duplicated with another question but I can not google out the answer.
Thanks
[UPDATE]
This's called Yoda Conditions, more information here.
Solution 1:
There's no actual difference. The second one is used to defend yourself from typo if ($var = 'value')
But not really readable. Use mostly the first one unless you are so tired that while typing you miss characters.
If you write code
if ($var = 'val') echo $var; //Output will be "val"
but if you do
if ('val' = $var) echo $var;
You'll get syntax error.
Solution 2:
'value' == $var
is called a yoda condition. And generally is not used, because it is less readable.
In performance matter, I'm not sure, but I guess your interpreter generate the exact same opcode.
Solution 3:
The mostly used one is $var=="value"
and if you want to it optimize then instead of ==
use ===