الدالة stripos()‎ في PHP

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

(PHP 5, PHP 7)

تعثر الدالة stripos()‎ على موضع أوّل مطابقة غير حساسة لحالة الأحرف لسلسلة نصية فرعية في سلسلة نصية أخرى.

الوصف

int stripos ( string $haystack , string $needle [, int $offset = 0 ] )

تبحث عن الموضع الرقمي لأوّل مطابقة للمعامل needle في سلسلة المعامل haystack النصية.

على عكس الدالة stripos()‎، الدالة strpos()‎ غير حساس لحالة الأحرف.

المعاملات

haystack

السلسلة المطلوب البحث فيها.

needle

لاحظ أن المعامل needle قد يكون سلسلة نصية من حرف واحد أو أكثر.

إذا لم يكن المعامل needle سلسلةً نصيةً، فسيُحوَّّل إلى عدد صحيح ويُطبَّق كقيمة ترتيبية لحرف ما.

offset

إذا حُدِّد المعامل offset، فسيبدأ البحث في عدد الأحرف الذي ضُبِطَ في هذا المعامل من بداية السلسلة النصية. أما إذا كانت الإزاحة سالبة، فسيبدأ البحث من هذا العدد من الأحرف من نهاية السلسلة النصية.

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

تعيد الدالة stripos()‎ موضع وجود المعامل needle بالنسبة إلى بداية سلسلة المعامل haystack النصية (مستقل عن المعامل offset). لاحظ أيضًا أن مواضع السلسلة تبدأ من 0 وليس 1.

تعيد الدالة stripos()‎ القيمة FALSE إذا لم يُعْثَرْ على المعامل needle.

تحذير: قد تعيد هذه الدالة القيمة المنطقية FALSE، ولكن قد تعيد أيضًا قيمة غير منطقية يتم تقييمها إلى FALSE. يرجى قراءة قسم القيم المنطقية لمزيد من المعلومات. استخدم المعامل === لاختبار القيمة المعادة لهذه الدالة.

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

الإصدار الوصف
7.1.0 أُضِيْفَ دعم للمعاملات offset السالبة.

أمثلة

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

لاحظ كيفية استخدام المعامل === والمعامل ‎!==‎ لاختبار القيمة المُعادة من هذه الدالة:

<?php
$findme    = 'a';
$mystring1 = 'xyz';
$mystring2 = 'ABC';
$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);
if ($pos1 === false) {
   echo "The string '$findme' was not found in the string '$mystring1'";
}
if ($pos2 !== false) {
   echo "We found '$findme' in '$mystring2' at position $pos2";
}
?>

ملاحظة: هذه الدالة آمنة ثنائيًا.

انظر أيضًا

  • الدالة mb_stripos()‎: البحث عن موضع التواجد الأول لسلسلة نصية داخل أخرى، غير حساسة لحالة الأحرف.
  • الدالة strpos()‎: البحث عن أوّل مطابقة لسلسلة نصية فرعية في سلسلة نصية.
  • الدالة strrpos()‎: البحث عن آخر مطابقة لسلسلة نصية فرعية في سلسلة نصية.
  • الدالة strripos()‎: البحث عن آخر مطابقة لسلسلة نصية فرعية، غير حساسة لحالة الأحرف في سلسلة نصية.
  • الدالة stristr()‎: غير حساس لحالة الأحرف كالدالة strstr()‎.
  • الدالة substr()‎: إعادة جزء من سلسلة نصية.
  • الدالة str_ireplace()‎: إصدار غير حساس لحالة الأحرف من الدالة str_replace()‎.

مصادر