الدالة strcspn()
في PHP
(PHP 4, PHP 5, PHP 7)
تعيد الدالة strcspn()
طول الجزء الأولي للمعامل subject
الذي لا يماثل المعامل mask
.
الوصف
int strcspn ( string $subject , string $mask [, int $start [, int $length]])
تعيد الدالة strcspn()
طول الجزء الأولي من الكلمة المدخلة لها في المعامل subject
بشرط ألا تحتوي أي حرف من حروف المعامل mask
.
إذا استدعيت الدالة بدون المعاملين start
و length
فستفحص السلسلة النصية subject
بالكامل. أما في حالة وجودهما فسيكون عمل الدالة كعمل الدالة substr()
فسيتم الفحص وفق المعاملين (انظر الدالة الدالة substr()
لمعرفة المزيد).
المعاملات
subject
السلسلة النصية المراد فحصها.
mask
السلسلة النصية التي تحتوي الحروف غير المرغوب فيها.
start
موضع لبدء البحث في المعامل subject
.
إذا كان المعامل start
معطى ولم يكن سالبًا، فستبدأ الدالة strcspn()
فَحْصَ المعامل subject
بدءًا من الموضع start
وليس من بداية المعامل. مثال: إذا كان المعامل subject
يساوي 'abcdef'
، الحرف في الموضع 0
هو 'a'
، الحرف في الموضع 2
هو 'c'
وهكذا.
إذا أُعْطِيَ المعامل start
وكان سالبًا، فستبدأ الدالة strcspn()
في فحص المعامل subject
بداية من الموضع start
ولكن من نهاية المعامل subject
.
length
هو طول الجزء المراد فحصه من المعامل subject
.
إذا كان المعامل length
معطى ولم يكن سالبًا، فسيُفحَص المعامل subject
من بدايته إلى موضع المعامل length
.
إذا كان المعامل length
معطى وكان سالبًا، فسيُفحَص المعامل subject
من نهايته إلى موضع المعامل length
.
القيم المعادة
تعيد الدالة strcspn()
طول الجزء المفحوص من المعامل subject
والذي لا يحوي أي حرف من حروف المعامل mask
.
ملحوظة: عند تعيين المعامل start
يُحسَب الطول المعاد بدءًا من موضع المعامل start
، وليس من بداية المعامل subject
.
أمثلة
المثال 1: مثال بسيط عن الدالة strcspn()
<?php
$a = strcspn('abcd', 'apple');
$b = strcspn('abcd', 'banana');
$c = strcspn('hello', 'l');
$d = strcspn('hello', 'world');
$e = strcspn('abcdhelloabcd', 'abcd', -9);
$f = strcspn('abcdhelloabcd', 'abcd', -9, -5);
var_dump($a);
var_dump($b);
var_dump($c);
var_dump($d);
var_dump($e);
var_dump($f);
?>
ناتج المثال السابق:
int(0)
int(0)
int(2)
int(2)
int(5)
int(4)
ملاحظات
هذه الدالة آمنة ثنائية.
انظر أيضًا
- الدالة
strspn()
: البحث عن طول المقطع الأولي من سلسلة نصية تتكون بالكامل من الأحرف الموجودة داخل القيمةmask
.