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
oluşumu, PHP dahil olmak üzere birçok programlama
dilindeki en önemli yapı taşlarından biri olup kod bölümlerinin koşullu
olarak çalıştırılabilmelerini sağlar. PHP, C dilindekine benzer bir
if
yapısı sunar:
if (ifade) deyim
İfadelerle ilgili bölümde de
anlatıldığı gibi, ifade kendi mantıksal
değeri üzerinden değerlendirilir. ifade'nin
sonucu true
ise, PHP deyim'i çalıştırır,
false
ise gözardı eder. Hangi değerlerin false
olarak
değerlendirildiği hakkında daha fazla bilgiyi boolean türüne
dönüşüm bölümünde bulabilirsiniz.
Aşağıdaki örnek, $a değeri $b
değerinden büyük olduğu takdirde a büyüktür b
metnini
görüntüleyecektir:
<?php
if ($a > $b)
echo "a büyüktür b";
?>
Çoğunlukla birden çok deyimin koşullu olarak çalıştırılmasını
isteyeceksiniz. Elbette, her deyimi ayrı ayrı if
cümlecikleri içine almanıza gerek yoktur. Birden çok deyimi tek bir
deyim grubu içine toplayabilirsiniz. Örneğin, aşağıdaki kod
$a değeri $b değerinden büyük
olduğu takdirde a büyüktür b
metnini görüntüleyecektir ve
sonrasında $a değişkeninin değerini
$b değişkenine atayacaktır:
<?php
if ($a > $b) {
echo "a büyüktür b";
$b = $a;
}
?>
Sonsuz sayıda if
deyimi bir başka
if
deyiminin içine gömülebilir. Bu, uygulamanızın
çeşitli bölümlerine koşullu deyimler uygulayabilmeniz için tam bir
esneklik sağlar.
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.