يتم استخدام الدالة isset() لاكتشاف ما إذا كان قد تم تعيين متغير وليس NULL. إذا تم تحرير متغير باستخدام unset()، فسوف يُرجع isset() FALSE. إذا تم استخدام isset() لاختبار متغير تم تعيينه على NULL، فسيتم إرجاع FALSE. لاحظ أيضًا أن الحرف الفارغ ("\0") لا يعادل الثابت NULL الخاص بـ PHP. متطلبات إصدار PHP: PHP 4، PHP 5، PHP 7 قواعد اللغة مجموعة منطقية (مختلطة $var [، مختلطة $...]) وصف المعلمة: $var: المتغير الذي سيتم اختباره. إذا تم تمرير معلمات متعددة في وقت واحد، فسوف يُرجع الدالة isset() القيمة TRUE فقط عند تعيين جميع المعلمات. تتم عملية الحساب من اليسار إلى اليمين وستتوقف فورًا عند مواجهة متغير غير محدد. قيمة الإرجاع يتم إرجاع TRUE إذا كان المتغير المحدد موجودًا وليس NULL، وإلا يتم إرجاع FALSE. مثال مثال <?php $var = ' ' ; // النتيجة صحيحة، لذا سيتم طباعة النص التالي. لو ( إيسيت ( $var ) ) { صدى " تم تعيين المتغير . " . // في الأمثلة التالية، سوف نستخدم var_dump لإخراج القيمة المرجعة لـ isset(). // القيمة المرجعة لـ isset(). $ a = " test " ; $ b = " othertest " ;var_dump ( isset ( $ a , $ b ) ) ; غير محدد ( $ a ) ; var_dump ( isset ( $ a ) ) ; var_dump ( isset ( $ a , $ b ) ) ; $ foo = NULL ; var_dump ( isset ( $ foo ) ) ; ?> الإخراج هو: تم تعيين المتغير. منطقي (صحيح) منطقي (صحيح) منطقي (خطأ) منطقي (خطأ) منطقي (خطأ) يعمل هذا أيضًا مع العناصر الموجودة في المصفوفة: مثال <?php $a = مصفوفة ( ' test ' => 1 , ' hello ' = > NULL , ' pie ' = > array ( ' a ' => ' apple ' ) ) ; var_dump ( isset ( $a [ ' test ' ] ) ) ; var_dump ( isset ( $a [ ' foo ' ] ) ) ; // FALSE var_dump ( isset ( $a [ ' hello ' ] ) ) ; // FALSE // قيمة المفتاح "hello" تساوي NULL، لذلك تعتبر غير مضبوطة // إذا كنت تريد اكتشاف قيم المفاتيح NULL، فيمكنك تجربة الطريقة التالية. var_dump ( array_key_exists ( ' hello ' , $a ) ) ; // TRUE // كشف أعمق var_dump ( isset ( $a [ ' pie ' ] [ ' a ' ] ) ) ; // TRUE var_dump ( isset ( $a [ ' pie ' ] [ ' b ' ] ) ) ; // FALSE var_dump ( isset ( $a [ ' cake ' ] [ ' a ' ] [ ' b ' ] ) ) ; // FALSE ?> الإخراج هو: منطقي (صحيح) منطقي (خطأ) منطقي (خطأ) منطقي (صحيح) منطقي (صحيح) منطقي (خطأ) منطقي (خطأ) استخدام isset() مع إزاحة السلسلة يغير PHP 5.4 سلوك isset() عند تمرير إزاحة سلسلة. مثال <?php $ expected_array_got_string = ' somestring ' ; ( isset ( $ المتوقعة_ array_got_string [ ' some_key ' ] ) ) ; ( $expected_array_got_string [ 0 .5 ] ) ) ; var_dump ( isset ( $expected_array_got_string [ ' 0.5 ' ] ) ) ; var_dump ( isset ( $ expected_array_got_string [ ' 0 Mostel ' ] ) ? > مخرجات المثال أعلاه في PHP 5.3: منطقي (صحيح) منطقي (صحيح) منطقي (صحيح) منطقي (صحيح) منطقي (صحيح) منطقي (صحيح) مخرجات المثال أعلاه في PHP 5.4: منطقي (خطأ) منطقي (صحيح) منطقي (صحيح) منطقي (صحيح) منطقي (خطأ) منطقي (خطأ)