• 0

ما هو الفرق بين & و && في الجمل الشرطية؟

حسب معرفتي فالمعامل & يستخدم في الجمل الشرطية في لغة ال php لأضافه شرط جديد ينبغي تحققه لكى يتم التأكد من صحة جملة الشرط ، فعلى سبيل المثال النص البرمجي التالي يقوم بالمقارنة بين قيم كل من x و y و zz  وطباعة كلمة Hello في الصفحة 

<?php
$x =10;
$y =11;
$z=12;
if($x<$y & $z>$y)
{
   echo "<h1>Hello</h1>";
}
?>

ولكن عند استبدال المعامل & ب && لا الاحظ أي تغيير في النتيجة المعروضة  

فما أهمية استخدام المعامل
& في الجمل الشرطية ومتى يتعين استخدامها بدلا من&&   ؟

 

 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة
  • 2

العلامة ( & ) تُستخدم للمقارنه بالـ bit بين قيمتين (1 و 1) او (0 و 0).
الموضوع مُعقد بعض الشئ ولكن ساحاول تبسيطه قدر المستطاع.

لنتعرف اولاً على طريقة تخزين الباينات بالذاكره لأستيعاب ما هي طبيعة عمل &.
 

<?php
$val1 = 3;
// 00000000 00000000 00000000 00000011
$val2 = 4;
// 00000000 00000000 00000000 00000100
// -----------------------------------
// 00000000 00000000 00000000 00000000
echo ($val1 & $val2);
// Result 0
?>

في هذا المثال انشأنا متغير $val1 ويحمل القيمه 3 وما قومت بتهميشه أسفل هذا المتغير هي الطريقه التي يتم بها حفظ الرقم 3 في الذاكره.
وكذلك مع المتغير الآخر $val2.

اما عن السطر الذي قبل امر الطباعة echo الذي قمت بتهميشه ايضاً هي عملية المقارنه التي تمت وكانت النتيجه عبارة عن اصفار.
ويتم هذا برمجياً باستخدام المعامل & فكما ترى قمت بطباعة $val1 & $val2 وكانت النتيجة هي 0.

للتأكد من هذه المعلومه قم بمشاهدة هذا الدرس من موقع php الرسمي Bitwise Operators 
 

اما عن العلامتين ( && ) فهما يُستخدمان للتأكد من صحة تحقق شرط وشرط آخر او شروط اُخرى ويُمكن استخدام كلمة AND سواء بحروف كبيره capitals او احرف صغيره small عوضاً عن تلك العلامات.
 

انشر على الشّبكات الاجتماعية


رابط هذه المساهمة

يجب أن تكون عضوًا لدينا لتتمكّن من التعليق

انشاء حساب جديد

يستغرق التسجيل بضع ثوان فقط


سجّل حسابًا جديدًا

تسجيل الدخول

تملك حسابا مسجّلا بالفعل؟


سجّل دخولك الآن