آموزش عملگرها Operators در Php

بازدید: 692 بازدید
آموزش عملگرها در php

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

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

در آموزش امروز از سری آموزش های Php درباره عملگرها ، وظایف و انواع آنها صحبت خواهیم کرد.

همچنین می توانید با کدهای ساده و نمونه ها و مثال ها، با طور کامل با کاربرد و مفهوم عملگرها در php آشنا شوید.

همراه پرنیان طرح باشید.

با سلام خدمت همراهان همیشگی سایت پرنیان طرح

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

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

در آموزش امروز از سری آموزش های Php درباره عملگرها ، وظایف و انواع آنها صحبت خواهیم کرد.

همچنین می توانید با کدهای ساده و نمونه ها و مثال ها، با طور کامل با کاربرد و مفهوم عملگرها در php آشنا شوید.

همراه پرنیان طرح باشید.

عملگرها در Php

php عملگرها را در 8 دسته کلی تقسیم بندی می کند. این 8 دسته این ها هستند:

1- عملگرهای ریاضی                                                Arithmetic operators

2- عملگرهای وظیفه ای                                          Assignment operators

3- عملگرهای مقایسه ای                                        Comparison operators

4- عملگرهای مرتب سازی صعودی/نزولی    Increment/Decrement operators

5- عملگرهای منطقی                                                   Logical operators

6- عملگرهای رشته ای                                                   String operators

7- عملگرهای آرایه ای                                                      Array operators

8- عملگرهای وظیفه ای شرطی                Conditional assignment operators

عملگرهای ریاضی در Php

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

در ادامه با انواع عملگرها و کارایی آنها و نمون کدنویسی برای آنها آشنا می شوید:

عملگر جمع   + 

دو مقدار یا متغیر را با هم جمع خواهد کرد.    نحوه کدنویسی برای این عملگر به شکل زیر خواهد بود.

[PHP]

<?php
$x = 10;
$y = 6;

echo $x + $y;
?>

[/PHP]

نتیجه این کد تنها نمایش عدد 16 می باشد.

عملگر تفریق  –

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

نمونه کد تفریق :

[PHP]

<?php
$x = 10;
$y = 6;

echo $x – $y;
?>

[/PHP]

نتیجه این کد نمایش عدد 4 خواهد بود.

عملگر ضرب  *

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

نمونه کد ضرب :

[PHP]

<?php
$x = 10;
$y = 6;

echo $x * $y;
?>

[/PHP]

نتیجه این کد نمایش عدد 60 خواهد بود.

عملگر  تقسیم /

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

نمونه کد تقسیم :

[PHP]

<?php
$x = 10;
$y = 6;

echo $x / $y;
?>

[/PHP]

نتیجه این کد نمایش خارج قسمت، تقسیم 10 بر 6 خواهد بود. یعنی  عدد 1.6666666666667 

عملگر باقیمانده     %

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

نمونه کد باقیمانده :

[PHP]

<?php
$x = 10;
$y = 6;

echo $x % $y;
?>

[/PHP]

نتیجه این کد نمایش عدد 4 خواهد بود.

عملگر توان      **

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

نمونه کد توان :

[PHP]

<?php
$x = 10;
$y = 3;

echo $x ** $y;
?>

[/PHP]

نتیجه این کد نمایش عدد 1000 خواهد بود.

عملگرهای انتصاب یا وظیفه ای در Php

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

شناخته شده ترین عملگر وظیفه ای در Php، عملگر تساوی “=” می باشد.

این به این معنی است که عملگر چپ، بامقدار عملگر راست پر خواهد شد.

عملگر تساوی =

مقدار عملگر سمت راست را، برابر با مقدار موجود در عملگر سمت چپ قرار می دهد.

کدنویسی برای این عملگر به شکل زیر خواهد بود:

[php]

<?php
$x = 10;
echo $x;
?>

[/php]

نتیجه این کد نمایش عدد 10 می باشد.

عملگرهای وظیفه ای دقیقا عملکردی مانند عملگرهای ریاضی از خود نشان می دهند .

اما یک تفاوت کوچک در نحوه کد نویسی دارند.

در ادامه این تفاوت ها را می بینید.

عملگر جمع   =+

عملگر تفریق =-

عملگر ضرب =*

عملگر تقسیم =/

عملگر باقیمانده =%

عملگرهای مقایسه ای در Php

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

عملگر تساوی ==

اگر مقادیر موجود در دو متغیر عینا با هم برابر باشند ، مقدار true بازگردانده می شود.

[php]

<?php
$x = 100;
$y = “100”;

var_dump($x == $y); // returns true because values are equal
?>

[/php]

نتیجه این کد trueخواهد بود. زیرا دو متغیر مقادیر کاملا یکسانی دارند.

 

عملگر یکسان بودن ===

اگر مقادیر موجود در دو متغیر، به لحاظ مقدار و نوع داده کاملا یکسان باشند مقدار true بازگردانده می شود.

[php]

<?php
$x = 100;
$y = “100”;

var_dump($x === $y); // returns false because types are not equal
?>

[/php]

نتیجه این کد trueخواهد بود. زیرا دو متغیر مقادیر کاملا یکسانی دارند.

 

 

عملگر نامساوی =!

اگر مقدار دو متغیر، با یکدیگر مساوی نباشند، این عملگر مقدار true را برمی گرداند. یعنی اگر دو متغیری که با هم مقایسه می شوند، مساوی نباشند، این شرط برقرار و درست است.

[php]

<?php
$x = 100;
$y = “100”;

var_dump($x != $y); // returns false because values are equal
?>

[/php]

نتیجه این کد، نمایش مقدار falseخواهد بود. زیرا دو متغیر با هم برابر هستند.پس شرط نامساوی بودن ، برقرار نیست.

عملگر نامساوی با علامت <> نیز نمایش داده می شود.نتیجه نیز مانند نمونه قبلی می باشد.

[php]

<?php
$x = 100;
$y = “100”;

var_dump($x <> $y); // returns false because values are equal
?>

[/php]

 

عملگر نامساوی به لحاظ نوع داده ==!

این عملگر ، دو متغیر را از نظر نوع داده( و نه مقدر!) مقایسع می کند. اگر نوع داده دو متغیر با هم یکسان نباشد، عملگر مقدار true را باز می گرداند.

[php]

<?php
$x = 100;
$y = “100”;

var_dump($x !== $y); // returns true because types are not equal
?>

[/php]

نکته! در مثال بالا ، متغیر y$ از نوع رشته ای است. و x$ از نوع عددی است.

نتیجه کد بالا، نمایش مقدار true می باشد.

 

عملگر برتری یا بزرگتر بودن >

این عملگر عدد بزرگتر را نمایش میدهد. اگر مقدار متغیر اول از دومی، بزرگتر باشد نتیجه این عملگر true خواهد بود.

[php]

<?php
$x = 100;
$y = 50;

var_dump($x > $y); // returns true because $x is greater than $y
?>

[/php]

نتیجه این کد، true می باشد.

 

عملگر کوچکتر بودن <

این عملگر عدد کوچکتر را نمایش میدهد. اگر مقدار متغیر اول از دومی، کوچکتر باشد نتیجه این عملگر true خواهد بود.

[php]

<?php
$x = 100;
$y = 50;

var_dump($x < $y); // returns true because $x is greater than $y
?>

[/php]

نتیجه این کد، true می باشد.

 

عملگر بزرگتر یا مساوی  =<

مقدار این عملگر true خواهد بود، اگر متغیر اول، از متغیر دوم بزرگتر باشد. و یا با آن برابر باشد.

[php]

<?php
$x = 50;
$y = 50;

var_dump($x >= $y); // returns true because $x is greater than or equal to $y
?>

[/php]

نتیجه این کد، مقدار true خواهد بود.

 

عملگر کوچکتر یا مساوی  =>

مقدار این عملگر true خواهد بود، اگر متغیر اول، از متغیر دوم کوچکتر باشد. و یا با آن برابر باشد.

[php]

<?php
$x = 50;
$y = 50;

var_dump($x <= $y); // returns true because $x is greater than or equal to $y
?>

[/php]

نتیجه این کد، مقدار true خواهد بود.

 

عملگر فضایی <=>

بسته به این که مقدار متغیر اول، چه مقداری نسبت به متغیر دوم دارد (بزرگتراست، یا مساوی است، یا کوچکتر است) ، یک مقدار عددصحیح به عنوان نتیجه برمی گرداند.

(این عملگر در php7 معرفی شده است)

به کد زیر دقت کنید:

[php]

<?php
$x = 5;
$y = 10;

echo ($x <=> $y); // returns -1 because $x is less than $y
echo “<br>”;

$x = 10;
$y = 10;

echo ($x <=> $y); // returns 0 because values are equal
echo “<br>”;

$x = 15;
$y = 10;

echo ($x <=> $y); // returns +1 because $x is greater than $y
?>

[/php]

 

 

نتیجه این تکه کد، در بخش اول:

<?php
$x = 5;
$y = 10;

echo ($x <=> $y); // returns -1 because $x is less than $y

مقدار -1 خواهد بود.زیرا متغیر اول از متغیر دوم کوچکتر است.

 

نتیجه این کد در بخش دوم :

$x = 10;
$y = 10;

echo ($x <=> $y); // returns 0 because values are equal

مقدار 0 خواهد بود. زیرا متغیر اول و دوم با هم برابرند.

 

نتیجه این کد در بخش سوم:

$x = 15;
$y = 10;

echo ($x <=> $y); // returns +1 because $x is greater than $y

مقدار 1 خواهد بود. زیرا متغیر اول از متغیر دوم بزرگتر است.

عملگرهای افزایشی / کاهشی در Php

عملگر پیش افزایش یا Pre-increment

این عملگر ، ابتدا یک واحد (تنها یک واحد) به شمارنده یا متغیر اضافه می کند، و سپس آن را نمایش میدهد.

[php]

<?php
$x = 10;
echo ++$x;
?>

[/php]

نتیجه این کد، نمایش عدد 11 خواهد بود. زیرا قبل از نمایش داده شدن، یک واحد به متغیر اضافه کرده ایم. x$++

 

عملگر پس افزایش یا Post-increment

[php]

<?php
$x = 10;
echo $x++;
?>

[/php]

نتیجه این کد، نمایش 10 خواهد بود. زیرا ابتدا متغیر را در وضعیت فعلی دیده و نمایش داده ایم، و سپس یک واحد به آن اضافه کرده ایم. ++x$

 

عملگر پیش کاهش یا Pre-decrement

این عملگر ، ابتدا یک واحد (تنها یک واحد) به شمارنده یا متغیر اضافه می کند، و سپس آن را نمایش میدهد.

[php]

<?php
$x = 10;
echo –$x;
?>

[/php]

نتیجه این کد، نمایش عدد 9 خواهد بود. زیرا قبل از نمایش داده شدن، یک واحد از متغیر کم کرده ایم. x$–

 

عملگر پس کاهش یا Post-decrement

[php]

<?php
$x = 10;
echo $x–;
?>

[/php]

نتیجه این کد، نمایش 10 خواهد بود. زیرا ابتدا متغیر را در وضعیت فعلی دیده و نمایش داده ایم، و سپس یک واحد از آن کم کرده ایم. –x$

عملگرهای منطقی در Php

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

عملگر “و” یا And

این عملگر با دو علامت And و && نمایش داده می شود. نتیجه این عملگر مقدار true خواهد بود اگر هر دو طرف شرط ، درست و مساوی باشند.

[php]

<?php
$x = 100;
$y = 50;

if ($x == 100 and $y == 50) {
echo “Hello world!”;
}
?>

[/php]

نتیجه این کد نمایش عبارت “!Hello world” خواهد بود.

 

عملگر “یا” یا Or

این عملگر با دو علامت Orو || نمایش داده می شود. نتیجه این عملگر مقدار true خواهد بود اگر یکی از دو طرف شرط ، درست باشند.

[php]

<?php
$x = 100;
$y = 50;

if ($x == 100 and $y == 80) {
echo “Hello world!”;
}
?>

[/php]

نتیجه این کد نمایش عبارت “!Hello world” خواهد بود. زیرا طرف اول شرط برقرار است، پس دیگر برقرار بودن یا نبودن طرف دوم شرط مهم نیست.

 

عملگر  XOr

این عملگر با علامت Xor نمایش داده می شود. نتیجه این عملگر مقدار true خواهد بود اگر فقط یکی از دو طرف شرط (و نه هر دو طرف!)، درست باشد.

[php]

<?php
$x = 100;
$y = 50;

if ($x == 100 Xor $y == 80) {
echo “Hello world!”;
}
?>

[/php]

نتیجه این کد نمایش عبارت “!Hello world” خواهد بود. زیرا طرف اول شرط برقرار است، , و طرف دوم شرط نباید برقرار باشد.

 

عملگر  Not

باعلامت =! نمایش داده می شود. تنها در صورتی نتیجه این عملگر true خواهد بود که دو متغیر با هم برابر نباشند. 

[php]

<?php
$x = 100;

if ($x !== 90) {
echo “Hello world!”;
}
?>

[/php]

نتیجه این کد نمایش عبارت “!Hello world” خواهد بود. زیرا مقدار موجود در متغیر x$ با آنچه که برای این متغیر، درون شرط تعیین شده است یکسان نیست. (90=!100)

عملگرهای رشته ای در Php

Php دو عملگر اختصاصی برای رشته ها دارد. یعنی این دو عملگر صرفا برای کار با رشته ها در این زبان طراحی شده اند.

عملگر جمع شدن :  “.”  : متغیر اول و دوم را در کنار هم قرار می دهد.

[php]

<?php
$txt1 = “Hello”;
$txt2 = ” world!”;
echo $txt1 . $txt2;
?>

[/php]

این کد، دو مقدار hello و world را تنها در کنار هم قرار داده و آن را بدون تغییر نمایش می دهد.

نتیجه این کد عبارت “!Hello world” خواهد بود.

 

عملگر الحاق :  “=.” 

رشته اول (متغیر اول) را به رشته دوم (متغیر دوم) الحاق می کند.

[php]

<?php
$txt1 = “Hello”;
$txt2 = ” world!”;
$txt1 .= $txt2;
echo $txt1;
?>

[/php]

رشته اول، مقدار hello را دارد. و رشته دوم ، مقدار world را در خود دارد.

در خط سوم، رشته اول به رشته دوم ملحق می شود، و در نهایت عبارت “!Hello world” به عنوان نتیجه نمایش داده می شود.

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

عملگرهای آرایه ای در Php

عملگر اتحاد Union

دو آرایه را با هم متحد می کند. یعنی ذو آرا به را هم پیوند می دهد.

[php]

<?php
$x = array(“a” => “red”, “b” => “green”);
$y = array(“c” => “blue”, “d” => “yellow”);

print_r($x + $y); // union of $x and $y
?>

[/php]

نتیجه این کد ، به شکل زیر خواهد بود:

Array ( [a] => red [b] => green [c] => blue [d] => yellow )

 

عملگر تساوی == Equality

در صورتی که دو آرایه ، دارای جفت های کلید/مقدار یکسان باشند، مقدار true به عنوان نتیجه باز گردانده می شود.

[php]

<?php
$x = array(“a” => “red”, “b” => “green”);
$y = array(“c” => “blue”, “d” => “yellow”);

var_dump($x == $y);
?>

[/php]

نتیجه این کد نمایش مقدار Falseخواهد بود.

 

عملگر کاملا مساوی === Identity

در صورتی که دو آرایه ، دارای جفت های کلید/مقدار یکسان باشند،و نوع داده های آنها نیز عینا مانند هم باشد، مقدار true به عنوان نتیجه باز گردانده می شود.

[php]

<?php
$x = array(“a” => “red”, “b” => “green”);
$y = array(“c” => “blue”, “d” => “yellow”);

var_dump($x === $y);
?>

[/php]

 

عملگر  نامساوی =! inequality  و <>  Inequality 

در صورتی که دو آرایه ، دارای جفت های کلید/مقدار یکسان نباشند،و نوع داده های آنها نیز عینا مانند هم نباشد، مقدار true به عنوان نتیجه باز گردانده می شود.

[php]

<?php
$x = array(“a” => “red”, “b” => “green”);
$y = array(“c” => “blue”, “d” => “yellow”);

var_dump($x !=$y);
?>

[/php]

نتیجه این کد نمایش مقدار Trueخواهد بود.

کد نمونه، برای هر دو علامت نامساوی می تواند مورد استفاده قرار گیرد. با این تفاوت که در خط اعلان شرط باید کد var_dump($x <> $y); نوشته شود.

 

 

عملگر  کاملانامساوی ===! 

در صورتی که دو آرایه ، دارای جفت های کلید/مقدار یکسان نباشند،و نوع داده های آنها نیز عینا مانند هم نباشد، مقدار true به عنوان نتیجه باز گردانده می شود.

[php]

<?php
$x = array(“a” => “red”, “b” => “green”);
$y = array(“c” => “blue”, “d” => “yellow”);

var_dump($x !==$y);
?>

[/php]

نتیجه این کد نمایش مقدار Trueخواهد بود.

عملگرهای شرطی وظیفه ای

عملگرهای سه گانه 

روش کار این عملگرها به صورت زیراست:

$x = expr1 ? expr2 : expr3

متغیر اول چک می شود. اگر :

شرط برای متغیر، برقرار باشد(نتیجه بررسی شرط برابر با true باشد)، آنگاه مقدارِ تعیین شده ی شماره 2 نمایش داده می شود.

اما اگر شرط برای مقدار متغیر اول برقرار نباشد (نتیجه بررسی شرط برابر با False باشد) ، مقدار تعیین شده ی شماره 3 نمایش داده می شود.

به مثال زیر دقت کنید:

[php]

<?php
// if empty($user) = TRUE, set $status = “anonymous”
echo $status = (empty($user)) ? “anonymous” : “logged in”;
echo(“<br>”);

$user = “John Doe”;
// if empty($user) = FALSE, set $status = “logged in”
echo $status = (empty($user)) ? “anonymous” : “logged in”;
?>

[/php]

نتیجه اجرای این تکه کد، نمایش عبارت زیر خواهد بود:

anonymous
logged in

 

ادغام صفر

روش کار این عملگر به صورت زیر است:

$x = expr1 ?? expr2

متغیر اول چک می شود.

مقدار متغیر اول برابر با مقدار تعیین شده در بیان اول خواهد بود اگر بیان اول وجود دشته باشد، و همچنین مقدار آن برابر با خالی نباشد.

اگر بیان اول وجود نداشته باشد، یا مقدار آن برابر با خالی باشد، آنگاه بیان دوم نمایش داده می شود. یعنی مقدار متغیر برابر با بیان دوم خواهد بود. و این بیان نمایش داده خواهد شد.

به مثال زیر دقت کنید:

[php]

<?php
// variable $user is the value of $_GET[‘user’]
// and ‘anonymous’ if it does not exist
echo $user = $_GET[“user”] ?? “anonymous”;
echo(“<br>”);

// variable $color is “red” if $color does not exist or is null
echo $color = $color ?? “red”;
?>

[/php]

نتیجه اجرای کد بالا، نمایش مقدار زیر خواهد بود:

anonymous
red

دسته بندی برنامه نویسی php
اشتراک گذاری
مقالات مرتبط

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

سبد خرید

هیچ محصولی در سبد خرید نیست.