substr_count
با شمارش زیررشته با substr_count می توانی ببینی یک کلمه چندبار در رشته آمده است. «زیررشته (Substring)» یعنی بخشی از متن اصلی. مثل شمردن «world» داخل یک جمله انگلیسی.
تعریف کوتاه
تابع substr_count() تعداد وقوع یک زیررشته را در رشته برمی گرداند. نتیجه حساس به حروف است. هم پوشانی ها شمارش نمی شوند.
سینتکس
substr_count(string $string, string $substring, int $start = 0, ?int $length = null): int
مثال 1 — شمردن ساده
<?php
echo substr_count("Hello world. The world is nice", "world");
?>
مثال 2 — استفاده از start و length
می توانی محدوده جستجو را تعیین کنی. شروع منفی از انتها شمرده می شود.
<?php
$str = "This is nice";
echo strlen($str);
echo "\n";
echo substr_count($str, "is");
echo "\n";
echo substr_count($str, "is", 2);
echo "\n";
echo substr_count($str, "is", 3);
echo "\n";
echo substr_count($str, "is", 3, 3);
echo "\n";
?>
مثال 3 — هم پوشانی شمارش نمی شود
زیررشته های روی هم حساب نمی شوند. مثل «abcab» داخل «abcabcab».
<?php
$str = "abcabcab";
echo substr_count($str, "abcab");
?>
نکات و هشدارها
نکته: جستجو حساس به حروف است. «A» با «a» فرق دارد.
نکته: از PHP 7.1، start و length می توانند منفی یا صفر باشند.
هشدار: اگر start + length از طول رشته بیشتر شود، اخطار می گیری.
گام های عملی
- رشته اصلی را مشخص کن.
- زیررشته هدف را تعیین کن.
- در صورت نیاز،
startوlengthرا بده.
برای برش متن ببین: substr. برای کوچک سازی حروف ببین: strtolower. همچنین: شمارش زیررشته با substr_count.
جمع بندی سریع
- حساس به حروف است.
- هم پوشانی حساب نمی شود.
- می توانی محدوده بدهی.
- طول نامعتبر اخطار می دهد.