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()
: التحقق من وجود مفتاح أو مؤشر معين في المصفوفة.