آموزش php
| | |

عملگرها در PHP

عملگرها (Operators) در PHP ابزارهایی هستند که به ما اجازه می‌دهند عملیات مختلفی را بر روی داده‌ها و متغیرها انجام دهیم. در PHP انواع مختلفی از عملگرها وجود دارد که هر کدام برای هدف خاصی طراحی شده‌اند. در این مقاله، به بررسی عملگرها در PHP و نحوه استفاده از آن‌ها می‌پردازیم.

انواع عملگرها در PHP


1. عملگرهای حسابی (Arithmetic Operators)

عملگرهای حسابی برای انجام محاسبات ریاضی مانند جمع، تفریق، ضرب و تقسیم استفاده می‌شوند.

عملگرتوضیحمثال
+جمع$a + $b
-تفریق$a - $b
*ضرب$a * $b
/تقسیم$a / $b
%باقیمانده$a % $b
**توان$a ** $b

مثال:

<?php
  $a = 10;
  $b = 3;

  echo $a + $b; // خروجی: 13
  echo $a * $b; // خروجی: 30
?>

2. عملگرهای انتساب (Assignment Operators)

عملگرهای انتساب برای اختصاص مقادیر به متغیرها استفاده می‌شوند. ساده‌ترین عملگر انتساب، علامت = است.

عملگرتوضیحمثال
=انتساب مستقیم مقدار$a = $b
+=اضافه کردن مقدار به متغیر و انتساب$a += $b
-=کم کردن مقدار از متغیر و انتساب$a -= $b
*=ضرب کردن مقدار با متغیر و انتساب$a *= $b
/=تقسیم مقدار و انتساب$a /= $b
%=انتساب باقیمانده$a %= $b

مثال:

<?php
  $a = 10;
  $a += 5; // معادل با $a = $a + 5
  echo $a; // خروجی: 15
?>

3. عملگرهای مقایسه‌ای (Comparison Operators)

عملگرهای مقایسه‌ای برای مقایسه دو مقدار استفاده می‌شوند و نتیجه آن‌ها یک مقدار بولین (true یا false) است.

عملگرتوضیحمثال
==برابر است$a == $b
===برابر و هم‌نوع است$a === $b
!=نابرابر است$a != $b
<>نابرابر است$a <> $b
!==نابرابر یا از نوع متفاوت$a !== $b
>بزرگتر است$a > $b
<کوچکتر است$a < $b
>=بزرگتر یا برابر است$a >= $b
<=کوچکتر یا برابر است$a <= $b

مثال:

<?php
  $a = 10;
  $b = 5;

  if ($a > $b) {
    echo "a بزرگتر از b است";
  }
?>

4. عملگرهای منطقی (Logical Operators)

عملگرهای منطقی برای ترکیب و ارزیابی عبارات بولین (true/false) استفاده می‌شوند.

عملگرتوضیحمثال
&&و (AND)$a && $b
||یا (OR)$a || $b
!نقیض (NOT)!$a
andو (اولویت پایین‌تر از &&)$a and $b
orیا (اولویت پایین‌تر از ||)$a or $b

مثال:

<?php
  $x = true;
  $y = false;

  if ($x && !$y) {
    echo "x درست است و y نادرست است";
  }
?>

5. عملگرهای افزایشی و کاهشی (Increment/Decrement Operators)

این عملگرها برای افزایش یا کاهش مقدار متغیرها به کار می‌روند.

عملگرتوضیحمثال
++$aپیش‌افزایش (افزایش و سپس استفاده)$a = 5; ++$a;
$a++پس‌افزایش (استفاده و سپس افزایش)$a = 5; $a++;
--$aپیش‌کاهش (کاهش و سپس استفاده)$a = 5; --$a;
$a--پس‌کاهش (استفاده و سپس کاهش)$a = 5; $a--;

مثال:

<?php
  $a = 5;
  echo ++$a; // خروجی: 6
  echo $a++; // خروجی: 6 (سپس $a می‌شود 7)
?>

6. عملگرهای رشته‌ای (String Operators)

این عملگرها برای اتصال و ترکیب رشته‌ها استفاده می‌شوند.

عملگرتوضیحمثال
.اتصال رشته$a . $b
.=انتساب با اتصال$a .= $b

مثال:

<?php
  $firstName = "Ali";
  $lastName = "Ahmadi";
  echo $firstName . " " . $lastName; // خروجی: Ali Ahmadi
?>

7. عملگرهای بیتی (Bitwise Operators)

این عملگرها برای انجام عملیات بیتی بر روی اعداد صحیح استفاده می‌شوند.

عملگرتوضیحمثال
&AND بیتی$a & $b
|OR بیتی$a | $b
^XOR بیتی$a ^ $b
~نقیض بیتی~$a
<<شیفت چپ$a << $b
>>شیفت راست$a >> $b

مثال شیفت به چپ و راست:

شیفت به چپ (<<): این عملگر بیت‌ها را به سمت چپ شیفت می‌دهد و هر بار شیفت به اندازه دو برابر کردن عدد است.

<?php
$a = 5; // باینری: 00000101
$b = $a << 1; // شیفت چپ: 00001010 -> 10
echo $b; // خروجی: 10
?>

شیفت به راست (>>): این عملگر بیت‌ها را به سمت راست شیفت می‌دهد و هر بار شیفت به اندازه نصف کردن عدد است.

<?php
$a = 5; // باینری: 00000101
$b = $a >> 1; // شیفت راست: 00000010 -> 2
echo $b; // خروجی: 2
?>

تقدم عملگرها در PHP

تقدم عملگرها (Operator Precedence) تعیین می‌کند که کدام عملگر قبل از عملگرهای دیگر ارزیابی شود. در PHP، برخی عملگرها نسبت به دیگر عملگرها تقدم بیشتری دارند.

جدول زیر تقدم برخی عملگرهای مهم را نشان می‌دهد:

عملگرهاتوضیح
()پرانتز برای تغییر تقدم
++ --پیش‌افزایش و پیش‌کاهش
**توان
* / %ضرب، تقسیم و باقیمانده
+ -جمع و تفریق
<< >>شیفت بیتی چپ و راست
== != === !==مقایسه
&&AND منطقی
`
= += -= *= /=عملگرهای انتساب

نتیجه‌گیری

عملگرها در PHP ابزارهای قدرتمندی برای انجام محاسبات، مقایسه و کنترل جریان برنامه‌ها هستند. با استفاده از این عملگرها می‌توان به راحتی داده‌ها را پردازش و منطق‌های مختلفی را در کدهای PHP پیاده‌سازی کرد.

نوشته‌های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *