1--TEST--
2Test mb_substr_count() function : basic functionality
3--SKIPIF--
4<?php
5extension_loaded('mbstring') or die('skip');
6function_exists('mb_substr_count') or die("skip mb_substr_count() is not available in this build");
7?>
8--FILE--
9<?php
10/* Prototype  : int mb_substr_count(string $haystack, string $needle [, string $encoding])
11 * Description: Count the number of substring occurrences
12 * Source code: ext/mbstring/mbstring.c
13 */
14
15/*
16 * Test Basic functionality of mb_substr_count
17 */
18
19echo "*** Testing mb_substr_count() : basic functionality ***\n";
20
21$string_ascii = 'This is an English string. 0123456789.';
22
23$string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=');
24$needle_mb1 = base64_decode('44CC');
25$needle_mb2 = base64_decode('44GT44KT44Gr44Gh44Gv44CB5LiW55WM');
26
27echo "\n-- ASCII String --\n";
28var_dump(mb_substr_count($string_ascii, 'is'));
29var_dump(mb_substr_count($string_ascii, 'hello, world'));
30
31echo "\n-- Multibyte String --\n";
32var_dump(mb_substr_count($string_mb, $needle_mb1));
33var_dump(mb_substr_count($string_mb, $needle_mb2));
34
35echo "Done";
36?>
37--EXPECT--
38*** Testing mb_substr_count() : basic functionality ***
39
40-- ASCII String --
41int(3)
42int(0)
43
44-- Multibyte String --
45int(2)
46int(0)
47Done
48