in_array()‎

من موسوعة حسوب


(PHP 4, PHP 5, PHP 7)

تتحقق الدالة in_array()‎ من وجود قيمة ما في مصفوفة.

الوصف

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

تبحث الدالة في المصفوفة haystack عن القيمة needle باستخدام مقارنة عادية (ليست صارمة، أي كما لو استخدمنا المعامل ==) ما لم يُضبَط المعامل strict.

المعاملات

needle

القيمة التي نبحث عنها.

ملاحظة: إذا كانت needle سلسلةً نصيةً (string)، فستكون المقارنة حساسةً لحالة الأحرف.

haystack

المصفوفة المراد البحث فيها.

strict

إذا ضُبِط المعامل الثالث strict إلى القيمة TRUE، فإن الدالة in_array()‎‎ ستتحقق أيضًا أنَّ نوع القيمة needle يُطابِق تلك الموجودة في haystack (أي أنَّ المقارمة صارمة، باستخدام المعامل ===).

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

تعيد هذه الدالة مفتاح العنصر الي يحمل القيمة needle إذا عُثِرَ عليه في المصفوفة، أو تعيد FALSE خلاف ذلك.

أمثلة

المثال 1: مثال على الدالة in_array()‎‎

<?php
$os = array("Mac", "NT", "Irix", "Linux");
if (in_array("Irix", $os)) {
    echo "Got Irix";
}
if (in_array("mac", $os)) {
    echo "Got mac";
}
?>

يفشل الشرط الثاني نظرًا لأن in_array()‎‎ حساسةٌ لحالة الأحرف، لذلك يعرض البرنامج أعلاه:

Got Irix

المثال 2: مثال على الدالة in_array()‎‎ مع استخدام المعامل strict

<?php
$a = array('1.10', 12.4, 1.13);

if (in_array('12.4', $a, true)) {
    echo "'12.4' found with strict check\n";
}

if (in_array(1.13, $a, true)) {
    echo "1.13 found with strict check\n";
}
?>

سوف تكون مُخرجات المثال أعلاه كالتالي:

1.13 found with strict check

مثال 3: مثال على الدالة in_array()‎‎ مع استخدام needle كمصفوفة

<?php
$a = array(array('p', 'h'), array('p', 'r'), 'o');

if (in_array(array('p', 'h'), $a)) {
    echo "'ph' was found\n";
}

if (in_array(array('f', 'i'), $a)) {
    echo "'fi' was found\n";
}

if (in_array('o', $a)) {
    echo "'o' was found\n";
}
?>

سوف تكون مُخرجات المثال أعلاه كالتالي:

'ph' was found
'o' was found

انظر أيضًا

  • الدالة array_search()‎: البحث في المصفوفة عن قيمة محددة وإعادة مفتاح أول عنصر يحمل هذه القيمة إذا نجحت عملية البحث.
  • الدالة isset()‎‎: تحديد ما إذا كان المتغير معينًا وقيمته ليست NULL.
  • الدالة array_key_exists()‎: التحقق من وجود مفتاح أو مؤشر معين في المصفوفة.

مصادر