Funktionen mb_substr_count

Funktionen mb_substr_count returnerer antallet af forekomster af en understreng i en streng. I modsætning til substr_count fungerer den korrekt med multibyte kodninger (UTF-8 og andre). Den første parameter er strengen, der skal søges i, den anden er den søgte understreng. Den tredje valgfrie parameter angiver kodningen.

Syntaks

phpmb_substr_count(string $haystack, string $needle, ?string $encoding = null): int

Eksempel

Lad os tælle antallet af forekomster af understrengen 'ab' i strengen:

php<?php
  $res = mb_substr_count('abcdeabab', 'ab');
  echo $res;
?>

Resultat af kodeudførelse:

php3

Eksempel

Tælling af forekomster med angivelse af UTF-8 kodning:

php<?php
  $res = mb_substr_count('привет мир', 'ир', 'UTF-8');
  echo $res;
?>

Resultat af kodeudførelse:

php2

Eksempel

Sammenligning med almindelig substr_count på kyrillisk:

php<?php
  $str = 'тест тест';
  echo 'substr_count: ' . substr_count($str, 'те') . '<br>';
  echo 'mb_substr_count: ' . mb_substr_count($str, 'те', 'UTF-8');
?>

Resultat af kodeudførelse:

php'substr_count: 3'
'mb_substr_count: 2'

Se også

  • funktionen substr_count,
    som tæller forekomster af understreng uden understøttelse af multibyte kodninger
  • funktionen mb_strpos,
    som søger efter positionen af den første forekomst af en understreng