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

من موسوعة حسوب
< PHP
لا ملخص تعديل
سطر 18: سطر 18:


=== <code>allow_string</code> ===
=== <code>allow_string</code> ===
إذا ضُبِطَت قيمة هذا المعامل إلى القيمة FALSE، فلا يُسمح عندها باستخدام اسم صنف على شكل سلسلة نصية كقيمة للمعامل object. يمنع هذا أيضًا استدعاء autoloader إذا لم يكن الصنف موجودًا.
إذا ضُبِطَت قيمة هذا المعامل إلى القيمة <code>FALSE</code>، فلا يُسمح عندها باستخدام اسم صنف على شكل سلسلة نصية كقيمة للمعامل <code>object</code>. يمنع هذا أيضًا استدعاء <code>autoloader</code> إذا لم يكن الصنف موجودًا.


== القيم المعادة ==
== القيم المعادة ==
سطر 39: سطر 39:


== أمثلة ==
== أمثلة ==
المثال 1: مثال عن استخدام الدالة is_a()‎‎‎‎<syntaxhighlight lang="php">
المثال 1: مثال عن استخدام الدالة <code>is_a()‎‎‎‎</code><syntaxhighlight lang="php">
<?php
<?php
// تعريف صنف‏
// تعريف صنف‏
سطر 63: سطر 63:


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة <code>get_class()</code>‎‎‎‎: إعادة اسم الصنف لكائن.
* الدالة <code>[[PHP/get class|get_class()]]</code>‎‎‎‎: إعادة اسم الصنف لكائن.
* الدالة <code>[[PHP/get parent class|get_parent_class()]]‎‎‎‎‎‎</code>: الحصول على اسم الصنف الأب لكائن أو لصنف.
* الدالة <code>[[PHP/get parent class|get_parent_class()]]‎‎‎‎‎‎</code>: الحصول على اسم الصنف الأب لكائن أو لصنف.
* الدالة <code>is_subclass_of()‎‎‎‎</code>: التحقق فيما إذا كان يملك الكائن صنفًا ما كواحد من الأصناف الآباء له.
* الدالة <code>[[PHP/is subclass of|is_subclass_of()]]‎‎‎‎</code>: التحقق فيما إذا كان يملك الكائن صنفًا ما كواحد من الأصناف الآباء له.


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

مراجعة 23:15، 15 أبريل 2018

(PHP 4 >= 4.2.0, PHP 5, PHP 7)

تتحقق الدالة is_a()‎‎‎‎‎‎ فيما إذا كان الكائن من صنفٍ معيّن أو كان ذاك الصنف واحدًا من الأصناف الآباء له.

الوصف

bool is_a(object $object string $class_name [,bool $allow_string = FALSE ])

تتحقق الدالة is_a()‎‎‎‎‎‎  فيما إذا كانت الكائن المُعطى  object هو من الصنف class_name أو يملك هذا الصنف كواحد من الأصناف الآباء له.

المعاملات

object

الكائن المُختبر.

class_name

اسم الصنف.

allow_string

إذا ضُبِطَت قيمة هذا المعامل إلى القيمة FALSE، فلا يُسمح عندها باستخدام اسم صنف على شكل سلسلة نصية كقيمة للمعامل object. يمنع هذا أيضًا استدعاء autoloader إذا لم يكن الصنف موجودًا.

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

تُعيد الدالة is_a()‎‎‎‎‎‎ القيمة TRUE إذا كان الكائن من صنفٍ معيّن أو يملك ذاك الصنف كواحد من الأصناف الآباء له، وإلا فإنها ستُعيد القيمة FALSE .

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

الإصدار الوصف
5.3.9 أُضيف المعامل allow_string.
5.3.0 لم تعد هذه الدالة مُهملة ولم تعد ترمي التحذيرات E_STRICT.
5.0.0 أصبحت هذه الدالة مُهملة لصالح العامل instanceof. حيث سينتج استدعاء هذه الدالة التحذير E_STRICT.

أمثلة

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

<?php
// تعريف صنف‏
class WidgetFactory
{
  var $oink = 'moo';
}

// إنشاء كائن جديد‏
$WF = new WidgetFactory();

if (is_a($WF, 'WidgetFactory')) {
  echo "yes, \$WF is still a WidgetFactory\n";
}
?>

المثال 2: مثال عن استخدام العامل instanceof في الإصدار PHP 5

<?php
if ($WF instanceof WidgetFactory) {
    echo 'Yes, $WF is a WidgetFactory';
}
?>

انظر أيضًا

  • الدالة get_class()‎‎‎‎: إعادة اسم الصنف لكائن.
  • الدالة get_parent_class()‎‎‎‎‎‎: الحصول على اسم الصنف الأب لكائن أو لصنف.
  • الدالة is_subclass_of()‎‎‎‎: التحقق فيما إذا كان يملك الكائن صنفًا ما كواحد من الأصناف الآباء له.

مصادر