الفرق بين المراجعتين لصفحة: «PHP/stristr»
أضفت المحتوى |
لا ملخص تعديل |
||
(1 مراجعات متوسطة بواسطة نفس المستخدم غير معروضة) | |||
سطر 1: | سطر 1: | ||
<noinclude>{{DISPLAYTITLE:الدالة <code>stristr()</code> في PHP}}</noinclude> | |||
(PHP 4, PHP 5, PHP 7) | (PHP 4, PHP 5, PHP 7) | ||
الدالة stristr() نسخة غير حساس لحالة الأحرف من الدالة strstr(). | الدالة <code>stristr()</code> نسخة غير حساس لحالة الأحرف من الدالة <code>[[PHP/strstr|strstr()]]</code>. | ||
== الوصف == | == الوصف == | ||
<syntaxhighlight lang="php"> | <syntaxhighlight lang="php"> | ||
string stristr ( string $haystack , mixed $needle [, bool $before_needle = FALSE ] ) | string stristr ( string $haystack , mixed $needle [, bool $before_needle = FALSE ] ) | ||
</syntaxhighlight>تبحث الدالة stristr() عن أول ظهور للسلسلة النصيَّة needle في السلسلة النصيَّة haystack ثم تعيد جزءًا من هذه السلسلة والتي تبدأ من بداية المعامل needle -الذي عثر عليه أولًا- وحتى نهاية السلسلة. | </syntaxhighlight>تبحث الدالة <code>stristr()</code> عن أول ظهور للسلسلة النصيَّة <code>needle</code> في السلسلة النصيَّة <code>haystack</code> ثم تعيد جزءًا من هذه السلسلة والتي تبدأ من بداية المعامل <code>needle</code> -الذي عثر عليه أولًا- وحتى نهاية السلسلة. | ||
== المعاملات == | == المعاملات == | ||
=== haystack === | === <code>haystack</code> === | ||
السلسلة النصيَّة التي ستبحث الدالة فيها. | السلسلة النصيَّة التي ستبحث الدالة فيها. | ||
=== needle === | === <code>needle</code> === | ||
مجموعة المحارف (السلسلة النصيَّة) التي ستبحث الدالة عنها. إن لم تكن تلك المحارف سلسلةً نصيَّةً، فستُحوَّل إلى عدد صحيح وتُعامل على أنَّها قيمة ترتيبيَّة للمحارف. | مجموعة المحارف (السلسلة النصيَّة) التي ستبحث الدالة عنها. إن لم تكن تلك المحارف سلسلةً نصيَّةً، فستُحوَّل إلى عدد صحيح وتُعامل على أنَّها قيمة ترتيبيَّة للمحارف. | ||
=== before_needle === | === <code>before_needle</code> === | ||
معامل اختياري. إن كانت قيمته | معامل اختياري. إن كانت قيمته <code>TRUE</code>، فستعيد الدالة <code>[[PHP/strstr|strstr()]]</code> جزءًا من السلسلة النصيَّة <code>haysatck</code> الواقع قبل أول ظهور للمعامل <code>needle</code> ولا يكون هذا المعامل ضمن القيمة المعادة. | ||
يُفْحَصُ المعاملان needle | يُفْحَصُ المعاملان <code>needle</code> و <code>haystack</code> بطريقة غير حساسة لحالة الأحرف. | ||
== القيم المعادة == | == القيم المعادة == | ||
تعيد الدالة stristr() جزءًامن المعامل haysatck الواقع بين أول ظهور للمعامل needle في تلك السلسلة وحتى آخرها. إن لم يُعثر على المعامل | تعيد الدالة <code>stristr()</code> جزءًامن المعامل <code>haysatck</code> الواقع بين أول ظهور للمعامل <code>needle</code> في تلك السلسلة وحتى آخرها. إن لم يُعثر على المعامل <code>needle</code>، فستُعاد القيمة <code>FALSE</code>. | ||
== سجل التغييرات == | == سجل التغييرات == | ||
{| class="wikitable" | {| class="wikitable" | ||
!الإصدار | |||
!الوصف | |||
|- | |- | ||
|5.3.0 | |5.3.0 | ||
|أضيف المعامل الاختياري before_needle. | |أضيف المعامل الاختياري <code>before_needle</code>. | ||
|- | |- | ||
|4.3.0 | |4.3.0 | ||
|أصبحتْ الدالة stristr() آمنة ثنائية | |أصبحتْ الدالة <code>stristr()</code> آمنة ثنائية | ||
|} | |} | ||
== أمثلة == | == أمثلة == | ||
المثال 1: مثال على الدالة stristr()<syntaxhighlight lang="php"> | المثال 1: مثال على الدالة <code>stristr()</code><syntaxhighlight lang="php"> | ||
<?php | <?php | ||
$email = 'USER@EXAMPLE.com'; | |||
echo stristr($email, 'e'); // ER@EXAMPLE.com | |||
echo stristr($email, 'e', true); // US بدءًا من الإصدار 5.3.0 | |||
?> | ?> | ||
</syntaxhighlight>المثال 2: اختبار هل عُثِرَ على سلسلة نصية أم لا<syntaxhighlight lang="php"> | </syntaxhighlight>المثال 2: اختبار هل عُثِرَ على سلسلة نصية أم لا<syntaxhighlight lang="php"> | ||
<?php | <?php | ||
$string = 'Hello World!'; | |||
if(stristr($string, 'earth') === FALSE) { | |||
echo '"earth" not found in string'; | |||
} | |||
// "earth" not found in string | // "earth" not found in string | ||
?> | ?> | ||
</syntaxhighlight>المثال 3: استخدام المعامل needle وهو ليس "سلسلة نصية"<syntaxhighlight lang="php"> | </syntaxhighlight>المثال 3: استخدام المعامل <code>needle</code> وهو ليس "سلسلة نصية"<syntaxhighlight lang="php"> | ||
<?php | <?php | ||
$string = 'APPLE'; | |||
echo stristr($string, 97); // 97 = lowercase a | |||
// APPLE | // APPLE | ||
?> | ?> | ||
</syntaxhighlight> | </syntaxhighlight> | ||
سطر 79: | سطر 64: | ||
== انظر أيضًا == | == انظر أيضًا == | ||
* الدالة strstr(): البحث عن أوّل مطابقة لسلسلة نصية. | * الدالة <code>[[PHP/strstr|strstr()]]</code>: البحث عن أوّل مطابقة لسلسلة نصية. | ||
* الدالة strrchr(): | * الدالة <code>[[PHP/strrchr|strrchr()]]</code>: البحث عن آخر مطابقة للحرف في سلسلة نصية. | ||
* الدالة stripos(): العثور على أول مطابقة لسلسلة نصية فرعية غير حساسة لحالة الأحرف في سلسلة نصية. | * الدالة <code>[[PHP/stripos|stripos()]]</code>: العثور على أول مطابقة لسلسلة نصية فرعية غير حساسة لحالة الأحرف في سلسلة نصية. | ||
* الدالة strpbrk(): البحث عن سلسلة لأي مجموعة من الأحرف. | * الدالة <code>[[PHP/strpbrk|strpbrk()]]</code>: البحث عن سلسلة لأي مجموعة من الأحرف. | ||
* الدالة preg_match(): إجراء مطابقة عبر التعابير النمطية. | * الدالة <code>[[PHP/preg match|preg_match()]]</code>: إجراء مطابقة عبر التعابير النمطية. | ||
== مصادر == | == مصادر == | ||
* [http://php.net/manual/en/function.stristr.php صفحة الدالة stristr في توثيق PHP الرسمي.] | * [http://php.net/manual/en/function.stristr.php صفحة الدالة stristr في توثيق PHP الرسمي.] | ||
[[تصنيف:PHP]] | |||
[[تصنيف:PHP Function]] | |||
[[تصنيف:PHP String]] |
المراجعة الحالية بتاريخ 13:50، 9 أبريل 2018
(PHP 4, PHP 5, PHP 7)
الدالة stristr()
نسخة غير حساس لحالة الأحرف من الدالة strstr()
.
الوصف
string stristr ( string $haystack , mixed $needle [, bool $before_needle = FALSE ] )
تبحث الدالة stristr()
عن أول ظهور للسلسلة النصيَّة needle
في السلسلة النصيَّة haystack
ثم تعيد جزءًا من هذه السلسلة والتي تبدأ من بداية المعامل needle
-الذي عثر عليه أولًا- وحتى نهاية السلسلة.
المعاملات
haystack
السلسلة النصيَّة التي ستبحث الدالة فيها.
needle
مجموعة المحارف (السلسلة النصيَّة) التي ستبحث الدالة عنها. إن لم تكن تلك المحارف سلسلةً نصيَّةً، فستُحوَّل إلى عدد صحيح وتُعامل على أنَّها قيمة ترتيبيَّة للمحارف.
before_needle
معامل اختياري. إن كانت قيمته TRUE
، فستعيد الدالة strstr()
جزءًا من السلسلة النصيَّة haysatck
الواقع قبل أول ظهور للمعامل needle
ولا يكون هذا المعامل ضمن القيمة المعادة.
يُفْحَصُ المعاملان needle
و haystack
بطريقة غير حساسة لحالة الأحرف.
القيم المعادة
تعيد الدالة stristr()
جزءًامن المعامل haysatck
الواقع بين أول ظهور للمعامل needle
في تلك السلسلة وحتى آخرها. إن لم يُعثر على المعامل needle
، فستُعاد القيمة FALSE
.
سجل التغييرات
الإصدار | الوصف |
---|---|
5.3.0 | أضيف المعامل الاختياري before_needle .
|
4.3.0 | أصبحتْ الدالة stristr() آمنة ثنائية
|
أمثلة
المثال 1: مثال على الدالة stristr()
<?php
$email = 'USER@EXAMPLE.com';
echo stristr($email, 'e'); // ER@EXAMPLE.com
echo stristr($email, 'e', true); // US بدءًا من الإصدار 5.3.0
?>
المثال 2: اختبار هل عُثِرَ على سلسلة نصية أم لا
<?php
$string = 'Hello World!';
if(stristr($string, 'earth') === FALSE) {
echo '"earth" not found in string';
}
// "earth" not found in string
?>
المثال 3: استخدام المعامل needle
وهو ليس "سلسلة نصية"
<?php
$string = 'APPLE';
echo stristr($string, 97); // 97 = lowercase a
// APPLE
?>
ملاحظات
هذه الدالة آمنة ثنائية.
انظر أيضًا
- الدالة
strstr()
: البحث عن أوّل مطابقة لسلسلة نصية. - الدالة
strrchr()
: البحث عن آخر مطابقة للحرف في سلسلة نصية. - الدالة
stripos()
: العثور على أول مطابقة لسلسلة نصية فرعية غير حساسة لحالة الأحرف في سلسلة نصية. - الدالة
strpbrk()
: البحث عن سلسلة لأي مجموعة من الأحرف. - الدالة
preg_match()
: إجراء مطابقة عبر التعابير النمطية.