الفرق بين المراجعتين لصفحة: «PHP/in array»
ط نقل عبد اللطيف ايمش صفحة PHP/Function/in-array إلى PHP/in array: إعادة هيكلة التوثيق |
إضافة روابط |
||
سطر 8: | سطر 8: | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) | bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] ) | ||
</syntaxhighlight>تبحث الدالة في المصفوفة <code>haystack</code> عن القيمة <code>needle</code> باستخدام مقارنة عادية (ليست صارمة، أي كما لو استخدمنا المعامل <code>==</code>) ما لم يُضبَط المعامل <code>strict</code>. | </syntaxhighlight>تبحث الدالة في المصفوفة <code>haystack</code> عن القيمة <code>needle</code> باستخدام مقارنة عادية (ليست صارمة، أي كما لو استخدمنا المعامل <code>[[PHP/comparison operators|==]]</code>) ما لم يُضبَط المعامل <code>strict</code>. | ||
== المعاملات == | == المعاملات == | ||
سطر 21: | سطر 21: | ||
=== <code>strict</code> === | === <code>strict</code> === | ||
إذا ضُبِط المعامل الثالث <code>strict</code> إلى القيمة <code>TRUE</code>، فإن الدالة <code>in_array()</code> ستتحقق أيضًا أنَّ | إذا ضُبِط المعامل الثالث <code>strict</code> إلى القيمة <code>TRUE</code>، فإن الدالة <code>in_array()</code> ستتحقق أيضًا أنَّ نوع القيمة <code>needle</code> يُطابِق تلك الموجودة في <code>haystack</code> (أي أنَّ المقارمة صارمة، باستخدام المعامل <code>[[PHP/comparison operators|===]]</code>). | ||
== القيم المعادة == | == القيم المعادة == | ||
سطر 37: | سطر 37: | ||
} | } | ||
?> | ?> | ||
</syntaxhighlight>يفشل الشرط الثاني نظرًا لأن <code>in_array()</code> | </syntaxhighlight>يفشل الشرط الثاني نظرًا لأن <code>in_array()</code> حساسةٌ لحالة الأحرف، لذلك يعرض البرنامج أعلاه:<syntaxhighlight lang="php"> | ||
Got Irix | Got Irix | ||
</syntaxhighlight>المثال 2: مثال على الدالة <code>in_array()</code> مع استخدام المعامل <code>strict</code><syntaxhighlight lang="PHP"> | </syntaxhighlight>المثال 2: مثال على الدالة <code>in_array()</code> مع استخدام المعامل <code>strict</code><syntaxhighlight lang="PHP"> |
مراجعة 12:59، 11 أبريل 2018
(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()
: التحقق من وجود مفتاح أو مؤشر معين في المصفوفة.