الفرق بين المراجعتين لصفحة: «PHP/stripos»

من موسوعة حسوب
< PHP
أضفت المحتوى
 
لا ملخص تعديل
 
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
 
<noinclude>{{DISPLAYTITLE:الدالة <code>stripos()</code>‎ في PHP}}</noinclude>
= الدالة stripos()‎ في PHP =
(PHP 5, PHP 7)
(PHP 5, PHP 7)


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


== الوصف ==
== الوصف ==
<syntaxhighlight lang="php">
<syntaxhighlight lang="php">
int stripos ( string $haystack , string $needle [, int $offset = 0 ] )
int stripos ( string $haystack , string $needle [, int $offset = 0 ] )
</syntaxhighlight>تبحث عن الموضع الرقمي لأوّل مطابقة للمعامل needle في سلسلة المعامل haystack النصية.
</syntaxhighlight>تبحث عن الموضع الرقمي لأوّل مطابقة للمعامل <code>needle</code> في سلسلة المعامل <code>haystack</code> النصية.


على عكس الدالة stripos()‎، الدالة strpos()‎ غير حساس لحالة الأحرف.
على عكس الدالة <code>stripos()‎</code>، الدالة <code>[[PHP/strpos|strpos()‎]]</code> غير حساس لحالة الأحرف.


== المعاملات ==
== المعاملات ==


=== haystack ===
=== <code>haystack</code> ===
السلسلة المطلوب البحث فيها.
السلسلة المطلوب البحث فيها.


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


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


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


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


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


تحذير: قد تعيد هذه الدالة القيمة المنطقية FALSE، ولكن قد تعيد أيضًا قيمة غير منطقية يتم تقييمها إلى FALSE. يرجى قراءة قسم القيم المنطقية لمزيد من المعلومات. استخدم المعامل === لاختبار القيمة المعادة لهذه الدالة.
تحذير: قد تعيد هذه الدالة القيمة المنطقية <code>FALSE</code>، ولكن قد تعيد أيضًا قيمة غير منطقية يتم تقييمها إلى <code>FALSE</code>. يرجى قراءة قسم [[PHP/boolean|القيم المنطقية]] لمزيد من المعلومات. استخدم المعامل === لاختبار القيمة المعادة لهذه الدالة.


== سجل التغييرات ==
== سجل التغييرات ==
{| class="wikitable"
{| class="wikitable"
|الإصدار
!الإصدار
|الوصف
!الوصف
|-
|-
|7.1.0
|7.1.0
|أُضِيْفَ دعم للمعاملات offset السلبية.
|أُضِيْفَ دعم للمعاملات <code>offset</code> السالبة.
|}
|}


== أمثلة ==
== أمثلة ==
المثال 1: مثال على الدالة stripos()‎
المثال 1: مثال على الدالة <code>stripos()‎</code>


لاحظ كيفية استخدام المعامل === والمعامل ‎!==‎ لاختبار القيمة المُعادة من هذه الدالة:<syntaxhighlight lang="php">
لاحظ كيفية استخدام المعامل <code>===</code> والمعامل <code>‎!==</code>‎ لاختبار القيمة المُعادة من هذه الدالة:<syntaxhighlight lang="php">
<?php
<?php
$findme    = 'a';
$findme    = 'a';
$mystring1 = 'xyz';
$mystring1 = 'xyz';
$mystring2 = 'ABC';
$mystring2 = 'ABC';
$pos1 = stripos($mystring1, $findme);
$pos1 = stripos($mystring1, $findme);
$pos2 = stripos($mystring2, $findme);
$pos2 = stripos($mystring2, $findme);
if ($pos1 === false) {
if ($pos1 === false) {
   echo "The string '$findme' was not found in the string '$mystring1'";
   echo "The string '$findme' was not found in the string '$mystring1'";
}
}
if ($pos2 !== false) {
if ($pos2 !== false) {
   echo "We found '$findme' in '$mystring2' at position $pos2";
   echo "We found '$findme' in '$mystring2' at position $pos2";
}
}
?>
?>
</syntaxhighlight>ملاحظة: هذه الدالة آمنة ثنائيًا.
</syntaxhighlight>ملاحظة: هذه الدالة آمنة ثنائيًا.


== انظر أيضًا ==
== انظر أيضًا ==
* الدالة mb_stripos()‎: البحث عن موضع التواجد الأول لسلسلة نصية داخل أخرى، غير حساسة لحالة الأحرف.
* الدالة <code>[[PHP/mb stripos|mb_stripos()‎]]</code>: البحث عن موضع التواجد الأول لسلسلة نصية داخل أخرى، غير حساسة لحالة الأحرف.
* الدالة strpos()‎: البحث عن أوّل مطابقة لسلسلة نصية فرعية في سلسلة نصية.
* الدالة <code>[[PHP/strpos|strpos()‎]]</code>: البحث عن أوّل مطابقة لسلسلة نصية فرعية في سلسلة نصية.
* الدالة strrpos()‎: البحث عن آخر مطابقة لسلسلة نصية فرعية في سلسلة نصية.
* الدالة <code>[[PHP/strrpos|strrpos()‎]]</code>: البحث عن آخر مطابقة لسلسلة نصية فرعية في سلسلة نصية.
* الدالة strripos()‎: البحث عن آخر مطابقة لسلسلة نصية فرعية، غير حساسة لحالة الأحرف في سلسلة نصية.
* الدالة <code>[[PHP/strripos|strripos()‎]]</code>: البحث عن آخر مطابقة لسلسلة نصية فرعية، غير حساسة لحالة الأحرف في سلسلة نصية.
* الدالة stristr()‎: غير حساس لحالة الأحرف كالدالة strstr()‎.
* الدالة <code>[[PHP/stristr|stristr()‎]]</code>: غير حساس لحالة الأحرف كالدالة <code>[[PHP/strstr|strstr()‎]]</code>.
* الدالة substr()‎: إعادة جزء من سلسلة نصية.
* الدالة <code>[[PHP/substr|substr()‎]]</code>: إعادة جزء من سلسلة نصية.
* الدالة str_ireplace()‎: إصدار غير حساس لحالة الأحرف من الدالة str_replace()‎.
* الدالة <code>[[PHP/str ireplace|str_ireplace()‎]]</code>: إصدار غير حساس لحالة الأحرف من الدالة <code>[[PHP/str replace|str_replace()‎]]</code>.


== مصادر ==
== مصادر ==
* [http://php.net/manual/en/function.stripos.php صفحة الدالة stripos في توثيق PHP الرسمي.]
* [http://php.net/manual/en/function.stripos.php صفحة الدالة stripos في توثيق PHP الرسمي.]
[[تصنيف:PHP]]
[[تصنيف:PHP Function]]
[[تصنيف:PHP String]]

المراجعة الحالية بتاريخ 13:47، 9 أبريل 2018

(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()‎.

مصادر