الفرق بين المراجعتين ل"PHP/in array"

من موسوعة حسوب
< PHP
اذهب إلى التنقل اذهب إلى البحث
ط (استبدال النص - 'PHP/Function/isset' ب'PHP/isset')
ط (إزالة سطر فارغ)
 
(4 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:<code>in_array()‎</code>}}</noinclude>
 
<noinclude>{{DISPLAYTITLE:<code>in_array()‎</code>}}</noinclude>
 
 
(PHP 4, PHP 5, PHP 7)
 
(PHP 4, PHP 5, PHP 7)
  
سطر 8: سطر 7:
 
<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: سطر 20:
  
 
=== <code>strict</code> ===
 
=== <code>strict</code> ===
إذا ضُبِط المعامل الثالث <code>strict</code> إلى القيمة <code>TRUE</code>، فإن الدالة <code>in_array()‎‎</code> ستتحقق أيضًا أنَّ [[PHP/Types|نوع]] القيمة <code>needle</code> يُطابِق تلك الموجودة في <code>haystack</code> (أي أنَّ المقارمة صارمة، باستخدام المعامل <code>===</code>).
+
إذا ضُبِط المعامل الثالث <code>strict</code> إلى القيمة <code>TRUE</code>، فإن الدالة <code>in_array()‎‎</code> ستتحقق أيضًا أنَّ نوع القيمة <code>needle</code> يُطابِق تلك الموجودة في <code>haystack</code> (أي أنَّ المقارمة صارمة، باستخدام المعامل <code>[[PHP/comparison operators|===]]</code>).
  
 
== القيم المعادة ==
 
== القيم المعادة ==
سطر 37: سطر 36:
 
}
 
}
 
?>
 
?>
</syntaxhighlight>يفشل الشرط الثاني نظرًا لأن <code>in_array()‎‎</code> حساس لحالة الأحرف، لذلك يعرض البرنامج أعلاه:<syntaxhighlight lang="php">
+
</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">
سطر 75: سطر 74:
  
 
== انظر أيضًا ==
 
== انظر أيضًا ==
* الدالة <code>[[PHP/array-search|array_search()‎]]</code>: البحث في المصفوفة عن قيمة محددة وإعادة مفتاح أول عنصر يحمل هذه القيمة إذا نجحت عملية البحث.
+
* الدالة <code>[[PHP/array_search|array_search()‎]]</code>: البحث في المصفوفة عن قيمة محددة وإعادة مفتاح أول عنصر يحمل هذه القيمة إذا نجحت عملية البحث.
 
* الدالة <code>[[PHP/isset|isset()‎‎]]</code>: تحديد ما إذا كان المتغير معينًا وقيمته ليست <code>NULL</code>.
 
* الدالة <code>[[PHP/isset|isset()‎‎]]</code>: تحديد ما إذا كان المتغير معينًا وقيمته ليست <code>NULL</code>.
* الدالة <code>[[PHP/array-key-exists|array_key_exists()‎]]</code>: التحقق من وجود مفتاح أو مؤشر معين في المصفوفة.
+
* الدالة <code>[[PHP/array_key_exists|array_key_exists()‎]]</code>: التحقق من وجود مفتاح أو مؤشر معين في المصفوفة.
  
 
== مصادر ==
 
== مصادر ==

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

مصادر