الفرق بين المراجعتين لصفحة: «PHP/boolean»

من موسوعة حسوب
< PHP
ط استبدال النص - '\[\[تصنيف:(.*)\]\]' ب'{{SUBPAGENAME}}'
ط استبدال النص - 'PHP/Types/array' ب'PHP/array'
سطر 36: سطر 36:
* [[PHP/Types/float|العدد ذو الفاصلة العشرية]] (العائمة) <code>0.0</code> 
* [[PHP/Types/float|العدد ذو الفاصلة العشرية]] (العائمة) <code>0.0</code> 
* [[PHP/Types/string|سلسلة نصية]] فارغة أو التي تحتوي على <code>"0"</code> 
* [[PHP/Types/string|سلسلة نصية]] فارغة أو التي تحتوي على <code>"0"</code> 
* [[PHP/Types/array|مصفوفة]] لا تحتوي على أي عنصر 
* [[PHP/array|مصفوفة]] لا تحتوي على أي عنصر 
* النوع الخاص <code>NULL</code> (بما في ذلك المتغيرات التي لم تُعيَّن قيم لها) 
* النوع الخاص <code>NULL</code> (بما في ذلك المتغيرات التي لم تُعيَّن قيم لها) 
* كائنات <code>SimpleXML</code> التي أُنشِئَت من وسوم فارغة
* كائنات <code>SimpleXML</code> التي أُنشِئَت من وسوم فارغة

مراجعة 03:33، 4 أبريل 2018

القيم المنطقية (boolean) من أبسط الأنواع، فالتعبير المنطقي يُعبِّر عن صحّة تعبيرٍ ما، فإما أن تكون قيمة التعبير صحيحةً TRUE أو خطأً FALSE.

البنية العامة

لتحديد قيمة متغير منطقي، استخدام الثوابت TRUE (صحيح) أو FALSE (خطأ)، وكلاهما غير حساس لحالة الأحرف.

<?php
$foo = True; // إسناد قيمة منطقية إلى المتغير
?>

تُعيد المعاملات عادةً قيمًا منطقيةً التي تُمرَّر بدورها إلى بنى التحكم؛ ففي المثال الآتي استخدمنا المعامل == الذي يختبر مساواة قيمتين ويُعيد قيمةً منطقيةً:

<?php
// اختبار المساواة باستعمال المعامل == الذي يعيد قيمةً منطقيةً
if ($action == "show_version") {
    echo "The version is 1.23";
}

// هذا ليس ضروريًا
if ($show_separators == TRUE) {
    echo "<hr>\n";
}

// فالبنية الآتية لها نفس المعنى
if ($show_separators) {
    echo "<hr>\n";
}
?>

تحويل القيم إلى قيم منطقية

لتحويل قيمة ما إلى قيمة منطقية، يمكنك استخدام «جبائر» (cast) التحويل (bool) أو (boolean) لكن هذا ليس ضروريًا في أغلب الحالات، لأن القيمة ستحوَّل تلقائيًا إذا كان المعامل أو الدالة أو البنية الشرطية تتطلب معاملًا منطقيًا.

يمكنك الإطلاع على صفحة التعامل مع الأنواع (Type Juggling) للمزيد من المعلومات. 

تُعدّ هذه القيم FALSE عند تحويلها إلى قيمة منطقية: 

أي قيمة أخرى ستُعدّ TRUE بما في ذلك أيّة موارد (resource) و NAN.

تحذير: ستُعدّ القيمة ‎-1 على أنها TRUE مثل أي رقم لا يساوي الصفر (سواء كان سالبًا أو موجبًا).

<?php
var_dump((bool) "");        // bool(false)
var_dump((bool) 1);         // bool(true)
var_dump((bool) -2);        // bool(true)
var_dump((bool) "foo");     // bool(true)
var_dump((bool) 2.3e5);     // bool(true)
var_dump((bool) array(12)); // bool(true)
var_dump((bool) array());   // bool(false)
var_dump((bool) "false");   // bool(true)
?>

مصادر