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

من موسوعة حسوب
< PHP
لا ملخص تعديل
 
سطر 25: سطر 25:
== سجل التغييرات ==
== سجل التغييرات ==
{| class="wikitable"
{| class="wikitable"
|الاصدار
!الإصدار
|      الوصف
!الوصف
|-
|-
|5.0.2
|5.0.2
سطر 41: سطر 41:


?>
?>
</syntaxhighlight>المثال 2: مثال عن استخدام المعامل  <code>autoload</code><syntaxhighlight lang="php">
</syntaxhighlight>المثال 2: مثال عن استخدام المعامل <code>autoload</code><syntaxhighlight lang="php">
<?php
<?php
function __autoload($class)
function __autoload($class)

المراجعة الحالية بتاريخ 03:11، 16 أبريل 2018

(PHP 4, PHP 5, PHP 7)

تتحقق الدالّة class_exists()‎‎‎ من أنّ الصنف الممرّر مُعرّف.

الوصف

bool class_exists ( string $class_name [, bool $autoload = TRUE ] )

تتحقق الدالة class_exists()‎ من أن الصنف الممرّر إليها مُعرّف أم لا.

المعاملات

class_name

اسم الصف المراد التحقق منه. يتم مطابقة الاسم بشكل غير حساس لحالة الأحرف.

autoload

ضبط إذا كانت ستُستدعى دالة ‎__autoload‎‎ افتراضيًا أم لا.

القيم المعادة

تُعيد الدالّة class_exists()‎ القيمة TRUE إذا كان الصنف class_name معرّفًا، وإلاّ فستُعيد FALSE.

سجل التغييرات

الإصدار الوصف
5.0.2 لم تعد تُعيد الدالة class_exists()‎ القيمة TRUE للواجهات (interfaces) المعرّفة. استخدم الدالة interface_exists()‎.

أمثلة

المثال 1: مثال عن استخدام الدالة class_exists()

<?php
//تحقق من أن الصنف معرّف قبل محاولة استخدامه
if (class_exists('MyClass')) {
    $myclass = new MyClass();
}

?>

المثال 2: مثال عن استخدام المعامل autoload

<?php
function __autoload($class)
{
    include($class . '.php');

    //تحقق فيما إذا كانت التضمينات قد صرحت عن الصنف 
    if (!class_exists($class, false)) {
        trigger_error("Unable to load class: $class", E_USER_WARNING);
    }
}

if (class_exists('MyClass')) {
    $myclass = new MyClass();
}

?>

انظر أيضًا

  • الدالة function_exists()‎‎: إعادة القيمة TRUE إذا كانت الدالة الممرّرة مُعرّفة.
  • الدالةinterface_exists()‎‎ ‎: التحقق فيما إذا كانت الواجهة مُعرّفة.
  • الدالة get_declared_classes(): إعادة مصفوفة بأسماء الأصناف المُعرّفة.

مصادر