easy way to execute conditional html / javascript / css / other language code with php if else:
<?php if (condition): ?>
html code to run if condition is true
<?php else: ?>
html code to run if condition is false
<?php endif ?>(PHP 4, PHP 5, PHP 7, PHP 8)
ΠΠΎΠ½ΡΡΡΡΠΊΡΠΈΡ if β ΠΎΡΠ½ΠΎΠ²ΠΎΠΏΠΎΠ»Π°Π³Π°ΡΡΠ°Ρ ΡΡΡΡΠΊΡΡΡΠ°
ΡΠ·ΡΠΊΠΎΠ² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Π²ΠΊΠ»ΡΡΠ°Ρ PHP. ΠΡΠ° ΡΡΡΡΠΊΡΡΡΠ° ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ
ΡΡΠ»ΠΎΠ²Π½ΠΎΠ΅ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠΎΠ² ΠΊΠΎΠ΄Π°. Π‘ΠΈΠ½ΡΠ°ΠΊΡΠΈΡ ΠΈ ΠΏΠΎΠ²Π΅Π΄Π΅Π½ΠΈΠ΅ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ if
Π² PHP ΠΏΠΎΡ
ΠΎΠΆΠΈ Π½Π° ΡΠ°Π±ΠΎΡΡ Π°Π½Π°Π»ΠΎΠ³ΠΈΡΠ½ΠΎΠΉ ΠΊΠΎΠ½ΡΡΡΡΠΊΡΠΈΠΈ Π² ΡΠ·ΡΠΊΠ΅ C:
if (Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅)
ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ
ΠΠ°ΠΊ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΡΠ°Π·Π΄Π΅Π» Β«ΠΡΡΠ°ΠΆΠ΅Π½ΠΈΡΒ»,
PHP Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅
ΠΊΠ°ΠΊ Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΎΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅. ΠΡΠ»ΠΈ PHP Π²ΡΡΠΈΡΠ»ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ true,
ΠΎΠ½ Π²ΡΠΏΠΎΠ»Π½ΠΈΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ, Π° Π΅ΡΠ»ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡ Π²ΡΡΠ°ΠΆΠ΅Π½ΠΈΠ΅ ΠΊΠ°ΠΊ
false β ΠΏΡΠΎΠΈΠ³Π½ΠΎΡΠΈΡΡΠ΅Ρ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ. ΠΠΎΠ»ΡΡΠ΅ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΠΈ ΠΎ ΡΠΎΠΌ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π½Π°ΡΠ΅Π½ΠΈΡ PHP Π²ΡΡΠΈΡΠ»ΡΠ΅Ρ
ΠΊΠ°ΠΊ false, Π΄Π°ΡΡ ΡΠ°Π·Π΄Π΅Π» Β«ΠΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°Π½ΠΈΠ΅ Π² Π»ΠΎΠ³ΠΈΡΠ΅ΡΠΊΠΈΠΉ ΡΠΈΠΏΒ».
Π‘Π»Π΅Π΄ΡΡΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ Π²ΡΠ²Π΅Π΄Π΅Ρ Β«a Π±ΠΎΠ»ΡΡΠ΅ bΒ», Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $a Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $b:
<?php
if ($a > $b)
echo "a Π±ΠΎΠ»ΡΡΠ΅ b";
?>
Π§Π°ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ, ΡΡΠΎΠ±Ρ ΠΏΠΎ ΡΡΠ»ΠΎΠ²ΠΈΡ Π²ΡΠΏΠΎΠ»Π½ΡΠ»ΠΎΡΡ Π±ΠΎΠ»ΡΡΠ΅ ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ.
ΠΠΎΠ½Π΅ΡΠ½ΠΎ, ΠΊΠ°ΠΆΠ΄ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΡ Π½Π΅ ΠΎΠ±ΠΎΡΠ°ΡΠΈΠ²Π°ΡΡ
Π² ΡΡΠ»ΠΎΠ²ΠΈΠ΅ if. ΠΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ ΠΎΠ±ΡΠ΅Π΄ΠΈΠ½ΡΡΡ Π² Π³ΡΡΠΏΠΏΡ.
ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ ΠΊΠΎΠ΄ Π²ΡΠ²Π΅Π΄Π΅Ρ Β«a Π±ΠΎΠ»ΡΡΠ΅ bΒ»,
Π΅ΡΠ»ΠΈ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $a Π±ΠΎΠ»ΡΡΠ΅, ΡΠ΅ΠΌ Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅
ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $b, Π° Π·Π°ΡΠ΅ΠΌ ΠΏΡΠΈΡΠ²ΠΎΠΈΡ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $b
Π·Π½Π°ΡΠ΅Π½ΠΈΠ΅ ΠΏΠ΅ΡΠ΅ΠΌΠ΅Π½Π½ΠΎΠΉ $a:
<?php
if ($a > $b) {
echo "a Π±ΠΎΠ»ΡΡΠ΅ b";
$b = $a;
}
?>
PHP ΡΠ°Π·ΡΠ΅ΡΠ°Π΅Ρ Π²ΠΊΠ»Π°Π΄ΡΠ²Π°ΡΡ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ if
Π² Π΄ΡΡΠ³ΠΈΠ΅ ΠΈΠ½ΡΡΡΡΠΊΡΠΈΠΈ if Π±Π΅ΡΠΊΠΎΠ½Π΅ΡΠ½ΠΎ,
ΡΡΠΎ Π΄Π°ΡΡ ΠΏΠΎΠ»Π½ΡΡ Π³ΠΈΠ±ΠΊΠΎΡΡΡ Π² ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΠΈ ΡΡΠ»ΠΎΠ²Π½ΠΎΠ³ΠΎ Π²ΡΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ
ΡΠ°ΡΡΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ.
easy way to execute conditional html / javascript / css / other language code with php if else:
<?php if (condition): ?>
html code to run if condition is true
<?php else: ?>
html code to run if condition is false
<?php endif ?>Left-to-right evaluation of && operators has one useful feature: evaluation stops after first "false" operand is encountered.
This feature can be useful for creating following construction:
$someVar==123 is not evaluated, so there will be no warnings such as "Undefined variable $someVar":
<?php
// $someVar=123; - commented line
if ((!empty($someVar))&&($someVar==123))
{
echo $someVar;
}
?>
Function someFunc($someVar) will not be called:
<?php
// $someVar=123; - commented line
if ((!empty($someVar))&&(someFunc($someVar)))
{
echo $someVar;
}
?>
This will give "Warning: Undefined variable $someVar" error. Order matters:
<?php
// $someVar=123;
if ((someFunc($someVar))&&(!empty($someVar)))
{
echo $someVar;
}
?>You can have 'nested' if statements withing a single if statement, using additional parenthesis.
For example, instead of having:
<?php
if( $a == 1 || $a == 2 ) {
if( $b == 3 || $b == 4 ) {
if( $c == 5 || $ d == 6 ) {
//Do something here.
}
}
}
?>
You could just simply do this:
<?php
if( ($a==1 || $a==2) && ($b==3 || $b==4) && ($c==5 || $c==6) ) {
//do that something here.
}
?>
Hope this helps!re: #80305
Again useful for newbies:
if you need to compare a variable with a value, instead of doing
<?php
if ($foo == 3) bar();
?>
do
<?php
if (3 == $foo) bar();
?>
this way, if you forget a =, it will become
<?php
if (3 = $foo) bar();
?>
and PHP will report an error.An other way for controls is the ternary operator (see Comparison Operators) that can be used as follows:
<?php
$v = 1;
$r = (1 == $v) ? 'Yes' : 'No'; // $r is set to 'Yes'
$r = (3 == $v) ? 'Yes' : 'No'; // $r is set to 'No'
echo (1 == $v) ? 'Yes' : 'No'; // 'Yes' will be printed
// and since PHP 5.3
$v = 'My Value';
$r = ($v) ?: 'No Value'; // $r is set to 'My Value' because $v is evaluated to TRUE
$v = '';
echo ($v) ?: 'No Value'; // 'No Value' will be printed because $v is evaluated to FALSE
?>
Parentheses can be left out in all examples above.