PHP Operatörler

php-operatorler
Yazı içeriği

Bu dersimizde PHP operatörler konusunu öğreneceğiz. PHP’deki tüm operatörleri ve kullanım alanlarını eksiksiz ve detaylı olarak, örneklerle anlattık. 

Bir veya birden fazla değer arasındaki işlemleri gerçekleştiren karakter veya sözcüklere operatör veya işleç denir. Operatör’ün ingilizcesi operator’dur ve Türkçe’de operatör olarak bilinir. Ancak bazı kaynaklar işleç olarak bahseder. Her ikisi de aynı anlamı taşır. 

PHP Operatörler

PHP Aritmetik Operatörler (Arithmetic Operators)

PHP aritmetik operatörleri, toplama, çıkarma, çarpma gibi genel aritmetik işlemleri gerçekleştirmek için sayısal değerlerle kullanılır.

OperatörİsimÖrnek
+Toplama (addition)$a + $b
Çıkarma (subtraction)$a – $b
*Çarpma (multiplication)$a * $b
/Bölme (division)$a / $b
%Modül (modulus)$a % $b

PHP Aritmetik Operatör Örnekleri

Toplama operatörüyle (addition operator) 2 değeri toplarız. Bu örnekte php toplama operatörünü kullandık:

echo 2+4; // Çıktı: 6
PHP

Çıkarma operatörüyle (subtraction operator) bir değerden diğer değeri çıkarırız. Bu örnekte php çıkarma operatörünü kullandık:

echo 5-2; // Çıktı: 3
PHP

Bölme operatörüyle (division operator) bir değeri diğer değere böleriz. Bu örnekte php bölme operatörünü kullandık:

echo 6/2; // Çıktı: 3
PHP

Çarpma operatörüyle (multiplication operator) bir değeri diğer değerle çarparız. Bu örnekte php çarpma operatörünü kullandık:

echo 5*2; // Çıktı: 10
PHP

Modül operatörüyle (modulus operator) bir değer diğer değere bölündüğünde kalan sayıyı buluruz. Bu örnekte php modül operatörünü kullandık:

echo 7%2; // Çıktı: 1
PHP

PHP Atama Operatörleri (Assignment Operators)

PHP atama operatörleri (assignment operators) değer atamak için kullanılır. 

OperatörİsimÖrnek
=Atama$a = $b
+=Topla ve Ata$a +=4
-=Çıkar ve Ata$a -=4
*=Böl ve Ata$a /=4
*=Çarp ve Ata$a *=4
%=Modül ve Ata$a %=4

PHP Atama Operatörü Örnekleri

Eşittir operatörüyle soldaki operanda sağdaki değeri atadık. 

$a = 20;
PHP

Topla ve ata operatörüyle değişkene soldaki ile sağdaki değişkenin toplamını atadık. 

$a = 10;
$b = 15; 
$a += $b; // $a değişkeninin değeri 25
// Üst satırdaki ifade ile $a = $a + $b ifadesi aynı.
PHP

Çıkar ve ata operatörüyle değişkene sağdaki değişken değerinin soldaki değişken değerinden çıkarıldığında kalan sonucu atadık. 

$a = 20;
$b = 10; 
$a -= $b; // $a değişkeninin değeri 10
// Üst satırdaki ifade ile $a = $a - $b ifadesi aynı.
PHP

Böl ve ata operatörüyle değişkene soldaki değişken değerinin sağdaki değişken değerine kaç kez bölünebildiği sonucunu atadık. 

$a = 12;
$b = 4; 
$a /= $b; // $a değişkeninin değeri 3
// Üst satırdaki ifade ile $a = $a / $b ifadesi aynı.
PHP

Çarp ve ata operatörüyle değişkene iki değişken değerinin birbiriyle çarpıldığında çıkan sonucu atadık. 

$a = 2;
$b = 2; 
$a *= $b; // $a değişkeninin değeri 4
// Üst satırdaki ifade ile $a = $a * $b ifadesi aynı.
PHP

Modül ve ata operatörüyle değişkene soldaki değişken değerinin sağdaki değişken değerine bölündüğünde kalan sayıyı atadık. 

$a = 8;
$b = 3; 
$a %= $b; // $a değişkeninin değeri 2
// Üst satırdaki ifade ile $a = $a % $b ifadesi aynı.
PHP

PHP Karşılaştırma Operatörleri (Comparison Operators)

PHP karşılaştırma operatörleri (comparison operators) iki değeri karşılaştırmak için kullanılır.

OperatörİsimÖrnek
==Eşit (equal)$a == $b
===Denk (identical)$a === $b
!=Eşit Değil (not equal)$a != $b
!==Denk Değil (not identical)$a !== $b
<>Eşit Değil (not equal)$a <> $b
>Daha Büyük (greater than)$a > $b
<Daha Küçük (less than)$a < $b
>=Daha Büyük veya Eşit (greater than or equal to)$a >= $b
<=Daha Küçük veya Eşit (less than or equal to)$a <= $b

PHP Karşılaştırma Operatörü Örnekleri

Eşit (equal) operatörüyle iki değerin eşitliğini kontrol ettik.

$a = 4;
$b = 2; 
if ($a == $b) {
    echo "A, B'ye eşittir";
} else {
    echo "A, B'ye eşit değildir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Denk (identical) operatörüyle iki değerin denkliğini kontrol ettik.

$a = 4;
$b = '4'; 
if ($a === $b) {
    echo "A, B'ye denktir";
} else {
    echo "A, B'ye denk değildir";
}
// Çıktı: A, B'ye denk değildir
PHP

Eşit değil (not equal) operatörüyle iki değerin eşitsizliğini kontrol ettik.

$a = 4;
$b = 3; 
if ($a != $b) {
    echo "A, B'ye eşit değildir";
} else {
    echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Denk değil (not identical) operatörüyle iki değerin eşitsizliğini kontrol ettik.

$a = 4;
$b = '4'; 
if ($a !== $b) {
    echo "A, B'ye denk değildir";
} else {
    echo "A, B'ye denktir";
}
// Çıktı: A, B'ye denk değildir
PHP

Eşit değil (not equal) operatörüyle iki değerin eşitsizliğini kontrol ettik.

$a = 4;
$b = 2; 
if ($a <> $b) {
    echo "A, B'ye eşit değildir";
} else {
    echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Daha büyük (greater than) operatörüyle soldaki değerin sağdakinden daha büyük olup olmadığını kontrol ettik.

$a = 4;
$b = 2; 
if ($a > $b) {
    echo "A, B'den daha büyüktür";
} else {
        echo "A, B'den daha büyük değildir";
}
// Çıktı: A, B'den daha büyüktür
PHP

Daha küçük (less than) operatörüyle soldaki değerin sağdakinden daha küçük olup olmadığını kontrol ettik.

$a = 2;
$b = 4; 
if ($a &lt $b) {
    echo "A, B'den daha küçüktür";
} else {
        echo "A, B'den daha küçük değildir";
}
// Çıktı: A, B'den daha küçüktür
PHP

Daha büyük veya eşit (greater than or equal to) operatörüyle soldaki değerin sağdakinden daha büyük veya eşit olup olmadığını kontrol ettik.

$a = 4;
$b = 2; 
if ($a >= $b) {
    echo "A, B'den daha büyüktür veya eşittir";
} else {
        echo "A, B'den daha büyük veya eşit değildir";
}
// Çıktı: A, B'den daha büyüktür veya eşittir
PHP

Daha küçük veya eşit (less than or equal to) operatörüyle soldaki değerin sağdakinden daha küçük veya eşit olup olmadığını kontrol ettik.

$a = 2;
$b = 4; 
if ($a <= $b) {
    echo "A, B'den daha küçüktür veya eşittir";
} else {
        echo "A, B'den daha küçük veya eşit değildir";
}
// Çıktı: A, B'den daha küçüktür veya eşittir
PHP

PHP Arttırma Azaltma Operatörleri (Increment/Decrement Operators)

PHP artış operatörleri (increment operators) bir değişkenin değerini arttırmak için kullanılır. PHP azalma operatörleri (decrement operators) bir değişkenin değerini azaltmak için kullanılır. 

Operatörİsim
++$iÖnce Artış (pre-increment)
$i++Sonra Artış  (post-increment)
–$iÖnce Azalma (pre-decrement)
$i–Sonra Azalma (post-decrement)

PHP Arttırma Azaltma Operatörü Örnekleri

Önce artış (pre-increment) operatörü $i değişkeninin değerini önce arttırır, ardından $i değişkenini döndürür. 

$i = 10;  
echo ++$i; // Çıktı: 11
PHP

Sonra artış (post-increment) operatörü $i değişkenini döndürür, ardından $i değişkeninin değerini arttırır.

$i = 10;  
echo $i++; // Çıktı: 10
PHP

Önce azalma (pre-decrement) operatörü $i değişkeninin değerini önce azaltır, ardından $i değişkenini döndürür. 

$i = 10;  
echo --$i; // Çıktı: 9
PHP

Sonra azalma (post-decrement) operatörü $i değişkenini döndürür, ardından $i değişkeninin değerini azaltır.

$i = 10;  
echo ++$i; // Çıktı: 10
PHP

PHP Mantıksal Operatörler (Logical Operators)

PHP mantıksal operatörler, koşullu ifadeleri birleştirmek için kullanılır.

OperatörİsimÖrnek
andve (and)$a and $b
orya da (or)$a or $b
xorxor$a xor $b
&&ve (and)$a && $b
||ya da (or)$a || $b
!değil (not)$a ! $b

PHP Mantıksal Operatör Örnekleri

Ve (and) operatörü $a ve $b’deki koşul sağlandıysa true döndürür.

$a = 100;
$b = 50;
if ($a === 100 and $b === 50) {
    echo "A, 100'e denktir ve B, 50'e denktir";
}
// Çıktı: A, 100'e denktir ve B, 50'e denktir
PHP

Veya (or) operatörü $a veya $b’deki koşul sağlandıysa true döndürür.

$a = 100;
$b = 50;
if ($a === 100 or $b === 75) {
    echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktir
PHP

Ve (and) operatörü $a ve $b’deki koşul sağlandıysa true döndürür.

$a = 100;
$b = 50;
if ($a === 100 && $b === 50) {
    echo "A, 100'e denktir ve B, 50'e denktir";
}
// Çıktı: A, 100'e denktir ve B, 50'e denktir
PHP

Veya (or) operatörü $a veya $b’deki koşul sağlandıysa true döndürür.

$a = 100;
$b = 50;
if ($a === 100 || $b === 75) {
    echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktir
PHP

Xor operatörü sadece $a veya $b’deki koşul sağlandıysa true döndürür.

$a = 100;
$b = 50;
if ($a === 100 xor $b === 75) {
    echo "A, 100'e denktir veya B, 75'e denktir";
}
// Çıktı: A, 100'e denktir veya B, 75'e denktir
PHP

Değil (not) operatörü $a’daki koşul sağlanmadıysa true döndürür.

$x = 50;
if ($x !== 75) {
    echo "X, 75'e denk değildir";
}
// Çıktı: X, 75'e denk değildir
PHP

PHP Metin Operatörleri (String Operators)

PHP metinler için tasarlanmış 2 operatöre sahiptir:
Birleştirme  operatörü (concatenation operator) ve birleştirme ataması operatörü (concatenation assignment operator).

OperatörİsimÖrnek
.Birleştirme Operatörü (concatenation operator)$a . $b
.=Birleştirme Ataması Operatörü (concatenation assignment operator)$a .= $b

PHP Metin Operatörü Örnekleri

Birleştirme operatörü (concatenation operator) iki veriyi birleştirir. Aşağıdaki örnekte $a ve $b değişkenin verisini birleştirerek yazdırdık. 

$a = "Hello ";
$b = " World!";
echo $a . $b;
// Çıktı: Hello World!
PHP

Birleştirme ataması operatörü (concatenation assignment operator) birinci verinin yanına ikinci veriyi ekler. Aşağıdaki örnekte $a değişkeninin verisinin yanına $b değişkeninin verisini ekledik ve $a değişkenini yazdırdık.

$a = "Hello ";
$b = " World!";
$a .= $b;
echo $a;
// Çıktı: Hello World!
PHP

PHP Dizi Operatörleri (Array Operators)

PHP’deki dizi operatörleri (array operators) dizileri karşılaştırmak için kullanılır. 

OperatörİsimÖrnek
+Birleştirme Operatörü (union)$a + $b
==Eşitlik Operatörü (equality)$a == $b
===Denklik Operatörü (identity)$a === $b
!=Eşitsizlik Operatörü (inequality)$a != $b
<>Eşitsizlik Operatörü (inequality)$a <> $b
!==Denksizlik Operatörü (non-identity)$a !== $b

PHP Dizi Operatörü Örnekleri

Birleştirme operatörü (union) dizileri birleştirir. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
print_r($a + $b);
// Çıktı: Array ( [a] => kırmızı [b] => mavi [c] => yeşil [d] => sarı )
PHP

Eşitlik operatörü (equality) dizilerde eşitlik kontrolü sağlar. İki dizinin verilerinin eşit olup olmadığını eşitlik operatörüyle öğrenebiliriz. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
if ($a == $b) {
	echo "A, B'ye eşittir";
} else {
	echo "A, B'ye eşit değildir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Denklik operatörü (identity) dizilerde eşitlik kontrolü sağlar. İki dizinin verilerinin denk olup olmadığını denklik operatörüyle öğrenebiliriz. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
if ($a === $b) {
	echo "A, B'ye denktir";
} else {
	echo "A, B'ye denk değildir";
}
// Çıktı: A, B'ye denk değildir
PHP

Eşitsizlik operatörü (inequality) dizilerde eşitsizlik kontrolü sağlar. İki dizinin verilerinin eşit olmadığını eşitsizlik operatörüyle öğrenebiliriz. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
if ($a != $b) {
	echo "A, B'ye eşit değildir";
} else {
	echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Eşitsizlik operatörü (inequality) dizilerde eşitsizlik kontrolü sağlar. İki dizinin verilerinin eşit olmadığını eşitsizlik operatörüyle öğrenebiliriz. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
if ($a  $b) {
	echo "A, B'ye eşit değildir";
} else {
	echo "A, B'ye eşittir";
}
// Çıktı: A, B'ye eşit değildir
PHP

Denksizlik operatörü (non-identity) dizilerde denksizlik kontrolü sağlar. İki dizinin verilerinin denk olmadığını eşitsizlik operatörüyle öğrenebiliriz. 

$a = array('a' => 'kırmızı', 'b' => 'mavi');  
$b = array('c' => 'yeşil', 'd' => 'sarı');  
if ($a !== $b) {
	echo "A, B'ye denk değildir";
} else {
	echo "A, B'ye denktir";
}
// Çıktı: A, B'ye denk değildir
PHP

PHP Koşullu Atama Operatörleri (Conditional Assignment Operators)

PHP’ koşullu atama operatörleri koşullara bağlı olarak bir değer atamak için kullanılır.

OperatörİsimÖrnek
?: Üçlü Operatör (ternary)$a = expr1 ? expr2 : expr3
??Null Birleştirme Operatörü (null coalescing)$a = expr1 ?? expr2

PHP Koşullu Atama Operatörü Örnekleri

Üçlü operatör (ternary) koşula bağlı veri atar. Aşağıdaki örnekte $status değişkenine empty($user) koşulu true döndürürse “giriş yapılmadı”, false döndürürse “giriş yapıldı” verisini atadık. 

// Örnek 1:
$user = "Onur Özden";
echo $status = (empty($user)) ? "giriş yapılmadı" : "giriş yapıldı";
// empty($user) koşulu false ise, $status değişkenine "giriş yapıldı" değerini ata, true ise $status değişkenine "giriş yapılmadı" değerini ata.
// Örnek 2:
$user = "Onur Özden";
echo $status = (empty($user)) ? 0 : 1;
// empty($user) = false ise, $status değişkenine 0 değerini ata, true ise $status değişkenine 1 değerini ata.
PHP

Null birleştirme operatörü (null coalescing) koşula bağlı veri atar. Birinci veri varsa ve null değilse $a’ın değeri birinci veridir. Birinci veri yoksa veya null ise, $a’ın değeri ikinci veridir. Aşağıdaki örnekte $status değişkenine empty($user) koşulu true döndürürse “giriş yapılmadı”, false döndürürse “giriş yapıldı” verisini atadık. 

// $_GET['user'] varsa ve null değilse $user değişkenine değer olarak atanır, $_GET['user'] yoksa veya null ise $user değişkenine "giriş yapılmadı" metni değer olarak tanır. 
echo $user = $_GET['user'] ?? 'giriş yapılmadı';
// Çıktı: giriş yapılmadı
// $car değişkeni varsa ve null değilse $car değişkenine $car değişkeninin değeri atanır, $car değişkeni yoksa veya null ise $car değişkenine 'BMW' değeri atanır. 
echo $color = $color ?? 'BMW';
// Çıktı: BMW
PHP

PHP Operatör Önceliği

Operatör Önceliği Örnekleri

Matematikte olduğu gibi PHP’de de operatörlerin bazı öncelik değerleri vardır. Bir örnekle bunu anlayalım.

echo 3 + 5 * 2; // Çıktı: 13
PHP

Yukarıdaki işlemde çıktı 13 olacaktır. Çünkü çarpma işlemi toplamaya göre önceliklidir. Bu nedenle önce çarpma işlemi, sonra toplama işlemi yapıldı. Fakat işlem önceliğine müdahale etmek mümkündür.

echo (3 + 5) * 2; // Çıktı: 16
PHP

Yukarıdaki işlemde çıktı 16 olacaktır. Çünkü toplama işlemini parantez içerisine alınarak toplama işlemini önceliklendirdik. Bu nedenle önce toplama işlemi, sonra çarpma işlemi yapıldı. İşlem önceliğine bu şekilde müdahale ettik.

Operatörlerin Öncelik Tablosu

Aşağıdaki tabloda operatörler en yüksek öncelikliden başlayıp en düşük öncelikliye doğru sıralanmışlardır. Aynı satırda yer alan operatörler ise eş öncelikli olup hangi sırada ele alınacaklarına değerlendirme sırasında karar verilir. PHP’deki tüm operatörlerin öncelik tablosunu aşağıya ekledik.

İlişkilendirmeOperatörler
(yok)clone new
(yok)**
sağdan+ - ++ -- ~ (int) (float) (string) (array) (object) (bool) @
soldaninstanceof
(yok)!
soldan* / %
soldan+ - .
soldan<< >>
soldan.
yönsüz< <= > >=
yönsüz== != === !== <> <=>
left&
soldan^
soldan|
soldan&&
soldan||
right??
yönsüz? :
sağdan= += -= *= **= /= .= %= &= |= ^= <<= >>= ??=
(yok)yield from
(yok)yield
(yok)print
soldanand
soldanxor
soldanor

Bu tablo php.net sitesinden alıntıdır. Kaynak: https://www.php.net/manual/tr/language.operators.precedence.php

Benzer yazılar

php-foreach
PHP Döngülerin Performanslı ve Etkili Kullanımı

PHP en iyi yaklaşımlar serimizin bu bölümünde PHP döngüler (loop) hakkında kaliteli kodlama ve en iyi yaklaşım örneklerini paylaştık. Artık PHP’de döngüleri daha performanslı ve etkili olarak kullanacaksınız!

Yazıyı oku
PHP Etiketleri
PHP Etiketlerinin Efektif Kullanımı

PHP en iyi yaklaşımlar serimizde bugünki konumuz: PHP etiketleri. PHP etiketlerini en iyi şekilde nasıl kullanabiliriz? PHP’de kısa etiketleri neden kullanmamalıyız? PHP etiketleri hakkında en iyi yaklaşımları öğrenin!

Yazıyı oku
PHP strpos() İşlevinin Doğru Kullanımı
PHP strpos() İşlevinin Doğru Kullanımı

PHP’de strpos işlevinde hiç anlatılmayan ipuçlarını ve sık karşılaşılan hataları hiç düşündünüz mü? Doğru ve en iyi PHP strpos() kullanımını öğrenmek için web sitemizdeki makaleden ve kod örneklerinden hemen ücretsiz…

Yazıyı oku
Yorumunu Paylaş
Sayfa Değerlendirmesi

Hızlı Detay Formu

Hızlı detay formumuzu doldurun ve aynı gün içerisinde taleplerinizi ve sitenizi inceleyip ulaşalım!

Hızlı İletişim Formu

Hızlı iletişim formumuzu doldurun ve aynı gün sitenizi analiz edip size ulaşalım!

Yanıtla
1
Whatsapp Destek Hattı
Merhaba. 👋
Size nasıl yardımcı olabiliriz?