في هذا الدرس، سوف نتعرف على عوامل تشغيل PHP. لقد شرحنا جميع العوامل ومجالات استخدامها في PHP بشكل كامل وبالتفصيل، مع الأمثلة.

تسمى الأحرف أو الكلمات التي تؤدي عمليات بين قيمة واحدة أو أكثر عوامل التشغيل أو عوامل التشغيل. الكلمة الإنجليزية للمشغل هي عامل التشغيل وتعرف باسم المشغل باللغة التركية. ومع ذلك، تشير بعض المصادر إلى أنه عامل. وكلاهما يحملان نفس المعنى.

مشغلي PHP

مشغلي PHP الحسابية

يتم استخدام عوامل التشغيل الحسابية في PHP مع القيم الرقمية لإجراء العمليات الحسابية الشائعة مثل الجمع والطرح والضرب.

مشغلاسممثال
+إضافة$أ + $ب
-الطرح$أ - $ب
*الضرب$أ * $ب
/تقسيم$أ / $ب
%معامل (معامل)$ أ % $ ب

أمثلة على عوامل تشغيل حسابية PHP

نضيف قيمتين مع عامل الجمع. في هذا المثال استخدمنا عامل إضافة PHP:

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

نحن نطرح قيمة من أخرى باستخدام عامل الطرح. في هذا المثال استخدمنا عامل الطرح PHP:

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

نحن نقسم قيمة على قيمة أخرى باستخدام عامل القسمة. في هذا المثال استخدمنا عامل تقسيم php:

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

نحن نضرب قيمة واحدة بقيمة أخرى باستخدام عامل الضرب. في هذا المثال استخدمنا عامل الضرب في PHP:

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

باستخدام معامل المعامل، نجد الباقي عند قسمة قيمة على قيمة أخرى. في هذا المثال استخدمنا مشغل وحدة php:

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

مشغلي تعيين PHP

يتم استخدام عوامل تعيين PHP لتعيين القيم.

مشغلاسممثال
=مهمة$أ = $ب
+=جمع وتجاهل$أ +=4
-=طرح وتعيين$أ-=4
*=تقسيم وتعيين$أ /=4
*=ضرب وتعيين$أ*=4
%=الوحدة والتعيين$أ%=4

أمثلة لمشغل تعيين PHP

لقد قمنا بتعيين القيمة الموجودة على اليمين إلى المعامل الأيسر باستخدام عامل التشغيل المتساوي.

$a = 20;

لقد قمنا بتعيين مجموع المتغيرات اليسرى واليمنى للمتغير باستخدام عامل الإضافة والتعيين.

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

باستخدام عامل الطرح والتعيين، قمنا بتعيين نتيجة طرح قيمة المتغير الموجود على اليمين من قيمة المتغير الموجود على اليسار إلى المتغير.

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

باستخدام عامل القسمة والتعيين، قمنا بتعيين للمتغير نتيجة عدد المرات التي يمكن فيها قسمة قيمة المتغير الموجود على اليسار على قيمة المتغير الموجود على اليمين.

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

باستخدام عامل الضرب والتعيين، قمنا بتعيين نتيجة ضرب قيمتين متغيرتين للمتغير.

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

باستخدام الوحدة ومعاملات التعيين، قمنا بتعيين الباقي للمتغير عندما تم قسمة قيمة المتغير الموجود على اليسار على قيمة المتغير الموجود على اليمين.

$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 لمقارنة قيمتين.

مشغلاسممثال
==متساوي$أ == $ب
===ما يعادلها$أ === $ب
!=غير متساوي (غير متساوي)$أ != $ب
!==ليست متطابقة$أ !== $ب
<>غير متساوي (غير متساوي)$أ <> $ب
>أعظم من$أ> $ب
<أقل من$أ< $ب
>=أكبر من أو يساوي$أ >= $ب
<=أقل من أو يساوي (أقل من أو يساوي)$أ <= $ب

أمثلة على عوامل مقارنة PHP

لقد تحققنا من مساواة قيمتين مع المعامل المتساوي.

$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

لقد تحققنا من تكافؤ قيمتين مع نفس العامل.

$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

لقد تحققنا من عدم مساواة قيمتين مع العامل غير المتساوي.

$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

لقد تحققنا من عدم مساواة قيمتين مع عامل غير متطابق.

$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

لقد تحققنا من عدم مساواة قيمتين مع العامل غير المتساوي.

$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

لقد تحققنا مما إذا كانت القيمة الموجودة على اليسار أكبر من القيمة الموجودة على اليمين باستخدام عامل التشغيل أكبر من.

$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

لقد تحققنا مما إذا كانت القيمة الموجودة على اليسار أصغر من القيمة الموجودة على اليمين باستخدام عامل التشغيل أقل من.

$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

لقد تحققنا مما إذا كانت القيمة الموجودة على اليسار أكبر من أو تساوي القيمة الموجودة على اليمين باستخدام عامل التشغيل أكبر من أو يساوي.

$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

لقد تحققنا مما إذا كانت القيمة الموجودة على اليسار أقل من أو تساوي القيمة الموجودة على اليمين باستخدام عامل التشغيل أقل من أو يساوي.

$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 لزيادة قيمة المتغير. يتم استخدام عوامل إنقاص PHP لتقليل قيمة المتغير.

مشغلاسم
++$أناالزيادة قبل (الزيادة المسبقة)
$ط++بعد الزيادة (بعد الزيادة)
--$أناالتخفيض قبل (الإنقاص المسبق)
$i--بعد التخفيض (بعد التخفيض)

أمثلة على عامل زيادة إنقاص PHP

يقوم عامل الزيادة المسبقة أولاً بزيادة قيمة المتغير $i ثم يقوم بإرجاع المتغير $i.

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

ثم يقوم عامل ما بعد الزيادة بإرجاع المتغير $i، ثم يزيد قيمة المتغير $i.

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

يقوم عامل التخفيض المسبق أولاً بتقليل قيمة المتغير $i ثم يقوم بإرجاع المتغير $i.

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

ثم يقوم عامل ما بعد التخفيض بإرجاع المتغير $i، ثم يقوم بإنقاص قيمة المتغير $i.

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

PHP العوامل المنطقية

تُستخدم عوامل PHP المنطقية لدمج التعبيرات الشرطية.

مشغلاسممثال
القسمو (و)$أ و$ب
أوأو (أو)$a أو $b
xorxor$a xor $b
&&و (و)$أ && $ب
||أو (أو)$ا || $ب
!لا (ملاحظة)$أ! $ب

أمثلة على عوامل التشغيل المنطقية PHP

ويعود عامل التشغيل (و) صحيحًا إذا تم استيفاء الشرط الموجود في $a و$b.

$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

يُرجع عامل التشغيل أو (أو) صحيحًا إذا تم استيفاء الشرط الموجود في $a أو $b.

$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

ويعود عامل التشغيل (و) صحيحًا إذا تم استيفاء الشرط الموجود في $a و$b.

$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

يُرجع عامل التشغيل أو (أو) صحيحًا إذا تم استيفاء الشرط الموجود في $a أو $b.

$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

يُرجع عامل التشغيل xor القيمة true فقط في حالة استيفاء الشرط الموجود في $a أو $b.

$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

يُرجع عامل التشغيل not القيمة true إذا لم يتم استيفاء الشرط الموجود في $a.

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

عوامل تشغيل النص PHP (عوامل تشغيل السلسلة)

لدى PHP عاملين مصممين للنصوص:
عامل التسلسل وعامل تعيين التسلسل.

مشغلاسممثال
.عامل التسلسل$أ. $ب
.=مشغل مهمة التسلسل$أ .= $ب

أمثلة لمشغل النص PHP

يجمع عامل التسلسل بين بياناتين. في المثال أدناه، قمنا بدمج بيانات المتغيرات $a و $b وطبعناها.

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

يضيف عامل تعيين التسلسل البيانات الثانية بجوار البيانات الأولى. في المثال أدناه قمنا بإضافة بيانات المتغير $b بجانب بيانات المتغير $a وقمنا بطباعة المتغير $a.

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

مشغلي صفيف PHP

يتم استخدام عوامل تشغيل المصفوفات في PHP لمقارنة المصفوفات.

مشغلاسممثال
+مشغل الاتحاد (الاتحاد)$أ + $ب
==عامل المساواة (المساواة)$أ == $ب
===مشغل التكافؤ (الهوية)$أ === $ب
!=عامل عدم المساواة (عدم المساواة)$أ != $ب
<>عامل عدم المساواة (عدم المساواة)$أ <> $ب
!==عامل عدم التوازن (عدم الهوية)$أ !== $ب

أمثلة لمشغل مصفوفة PHP

يجمع مشغل الاتحاد المصفوفات.

$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ı )

يوفر عامل المساواة (المساواة) التحكم في المساواة في المصفوفات. يمكننا معرفة ما إذا كانت بيانات صفيفين متساوية أم لا مع عامل المساواة.

$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

يوفر عامل الهوية التحكم في المساواة في المصفوفات. يمكننا معرفة ما إذا كانت بيانات صفيفين متكافئة مع عامل التكافؤ.

$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

يوفر عامل عدم المساواة (عدم المساواة) التحكم في عدم المساواة في المصفوفات. يمكننا أن نتعلم أن بيانات مصفوفتين غير متساوية مع عامل المتباينة.

$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

يوفر عامل عدم المساواة (عدم المساواة) التحكم في عدم المساواة في المصفوفات. يمكننا أن نتعلم أن بيانات مصفوفتين غير متساوية مع عامل المتباينة.

$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

يوفر عامل التشغيل غير الهوية التحكم غير الهوية في المصفوفات. يمكننا أن نكتشف أن بيانات مصفوفتين غير متكافئة مع عامل المتباينة.

$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 لتعيين قيمة بناءً على الشروط.

مشغلاسممثال
?:المشغل الثلاثي (الثلاثي)$a = expr1 ؟ اكسبر2: اكسبر3
??عامل الدمج الفارغ (الدمج الفارغ)$a = expr1 ؟؟ expr2

PHP أمثلة على عامل التعيين الشرطي

يقوم المشغل الثلاثي بتعيين البيانات الشرطية. في المثال أدناه، قمنا بتعيين البيانات "لم يتم تسجيل الدخول" إلى متغير الحالة $ إذا كانت الحالة الفارغة($user) تُرجع صحيحًا، و"تم تسجيل الدخول" إذا كانت تُرجع خطأ.

// Ö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.

يقوم عامل الدمج الفارغ بتعيين البيانات الشرطية. إذا كانت البيانات الأولى موجودة وليست فارغة، فإن قيمة $a هي البيانات الأولى. إذا كانت البيانات الأولى غير موجودة أو كانت فارغة، فإن قيمة $a هي البيانات الثانية. في المثال أدناه، قمنا بتعيين البيانات "لم يتم تسجيل الدخول" إلى متغير الحالة $ إذا كانت الحالة الفارغة($user) تُرجع صحيحًا، و"تم تسجيل الدخول" إذا كانت تُرجع خطأ.

// $_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 بعض القيم ذات الأولوية. دعونا نفهم هذا مع مثال.

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

في العملية المذكورة أعلاه سيكون الناتج 13. لأن الضرب له الأولوية على الجمع. ولذلك، تم إجراء الضرب أولا ثم الجمع. ومع ذلك، فمن الممكن التدخل في أولوية المعالجة.

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

في العملية المذكورة أعلاه سيكون الناتج 16. لأننا أعطينا الأولوية لعملية الجمع بوضعها بين قوسين. لذلك، تم إجراء عملية الجمع الأولى، ثم تم إجراء الضرب. هذه هي الطريقة التي تدخلنا بها في أولوية المعاملة.

جدول أولويات المشغلين

في الجدول أدناه، تم إدراج عوامل التشغيل بالترتيب من الأولوية الأعلى إلى الأولوية الأدنى. يتمتع المشغلون الموجودون على نفس الخط بأولوية متساوية ويتم تحديد الترتيب الذي سيتم التعامل معهم به أثناء التقييم. لقد قمنا بتضمين جدول الأسبقية لجميع عوامل التشغيل في PHP أدناه.

الإسنادمشغلي
(لا شيء)clone new
(لا شيء)**
من اليمين+ - ++ -- ~ (int) (float) (string) (array) (object) (bool) @
من اليسارinstanceof
(لا شيء)!
من اليسار* / %
من اليسار+ - .
من اليسار<< >>
من اليسار.
بلا اتجاه< <= > >=
بلا اتجاه== != === !== <> <=>
اليسار&
من اليسار^
من اليسار|
من اليسار&&
من اليسار||
صحيح??
بلا اتجاه? :
من اليمين= += -= *= **= /= .= %= &= |= ^= <<= >>= ??=
(لا شيء)yield from
(لا شيء)yield
(لا شيء)print
من اليسارand
من اليسارxor
من اليسارor

هذا الجدول مأخوذ من php.net. المصدر: https://www.php.net/manual/tr/language.operators.precedence.php