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

من موسوعة حسوب
< PHP
أنشأ الصفحة ب'<noinclude>{{DISPLAYTITLE:الدالة <code>class_exists()</code>‎ في PHP}}</noinclude> (PHP 4, PHP 5, PHP 7) تتحقق الدالّة class_exists()‎‎‎ م...'
 
سطر 2: سطر 2:
(PHP 4, PHP 5, PHP 7)
(PHP 4, PHP 5, PHP 7)


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


== الوصف ==
== الوصف ==
سطر 9: سطر 9:
</syntaxhighlight>
</syntaxhighlight>


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


== المعاملات ==
== المعاملات ==
<code>class_name</code>
اسم الصف المراد التحقق منه. يتم مطابقة الاسم بشكل غير حساس لحالة الأحرف.
اسم الصف المراد التحقق منه. يتم مطابقة الاسم بشكل غير حساس لحالة الأحرف.


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


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


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


== سجل التغييرات ==
== سجل التغييرات ==
سطر 27: سطر 29:
|-
|-
|5.0.2
|5.0.2
|لم تعد تُعيد الدالة class_exists()‎ القيمة TRUE للواجهات (interfaces) المعرّفة. استخدم الدالة interface_exists()‎.
|لم تعد تُعيد الدالة <code>class_exists()</code>‎ القيمة <code>TRUE</code> للواجهات (interfaces) المعرّفة. استخدم الدالة <code>interface_exists()</code>‎.
|}
|}


== أمثلة ==
== أمثلة ==
المثال 1: مثال عن استخدام الدالة class_exists()‎<syntaxhighlight lang="php">
المثال 1: مثال عن استخدام الدالة <code>class_exists()</code>‎<syntaxhighlight lang="php">
<?php
<?php
//تحقق من أن الصنف معرّف قبل محاولة استخدامه
//تحقق من أن الصنف معرّف قبل محاولة استخدامه
سطر 39: سطر 41:


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


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة <code>function_exists()</code>‎‎: إعادة القيمة TRUE إذا كانت الدالة الممرّرة مُعرّفة.
* الدالة <code>[[PHP/function exists|function_exists()]]</code>‎‎: إعادة القيمة TRUE إذا كانت الدالة الممرّرة مُعرّفة.
* الدالة<code>interface_exists()‎‎</code> ‎: التحقق فيما إذا كانت الواجهة مُعرّفة.
* الدالة<code>[[PHP/interface exists|interface_exists()]]‎‎</code> ‎: التحقق فيما إذا كانت الواجهة مُعرّفة.
* الدالة <code>get_declared_classes()‎</code>: إعادة مصفوفة بأسماء الأصناف المُعرّفة.
* الدالة <code>[[PHP/get declared classes|get_declared_classes()]]‎</code>: إعادة مصفوفة بأسماء الأصناف المُعرّفة.


== مصادر ==
== مصادر ==

مراجعة 22:54، 15 أبريل 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(): إعادة مصفوفة بأسماء الأصناف المُعرّفة.

مصادر