Annotation of embedaddon/php/ext/standard/tests/strings/substr_count_variation_001.phpt, revision 1.1.1.1

1.1       misho       1: --TEST--
                      2: Test substr_count() function (variation - 1)
                      3: --FILE--
                      4: <?php
                      5: 
                      6: echo "\n*** Testing possible variations ***\n";
                      7: echo "-- 3rd or 4th arg as string --\n";
                      8: $str = "this is a string";
                      9: var_dump( substr_count($str, "t", "5") );
                     10: var_dump( substr_count($str, "t", "5", "10") );
                     11: var_dump( substr_count($str, "i", "5t") );
                     12: var_dump( substr_count($str, "i", "5t", "10t") );
                     13: 
                     14: echo "\n-- 3rd or 4th arg as NULL --\n";
                     15: var_dump( substr_count($str, "t", "") );
                     16: var_dump( substr_count($str, "T", "") );
                     17: var_dump( substr_count($str, "t", "", 15) );
                     18: var_dump( substr_count($str, "I", NULL) );
                     19: var_dump( substr_count($str, "i", NULL, 10) );
                     20: 
                     21: echo "\n-- overlapped substrings --\n";
                     22: var_dump( substr_count("abcabcabcabcabc", "abca") ); 
                     23: var_dump( substr_count("abcabcabcabcabc", "abca", 2) ); 
                     24: 
                     25: echo "\n-- complex strings containing other than 7-bit chars --\n";
                     26: $str = chr(128).chr(129).chr(128).chr(256).chr(255).chr(254).chr(255);
                     27: var_dump(substr_count($str, chr(128)));
                     28: var_dump(substr_count($str, chr(255)));
                     29: var_dump(substr_count($str, chr(256)));
                     30: 
                     31: echo "\n-- heredoc string --\n";
                     32: $string = <<<EOD
                     33: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     34: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     35: acdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     36: acdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     37: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     38: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     39: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     40: abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
                     41: EOD;
                     42: var_dump(substr_count($string, "abcd"));
                     43: var_dump(substr_count($string, "1234"));
                     44: 
                     45: echo "\n-- heredoc null string --\n";
                     46: $str = <<<EOD
                     47: EOD;
                     48: var_dump(substr_count($str, "\0"));
                     49: var_dump(substr_count($str, "\x000"));
                     50: var_dump(substr_count($str, "0"));
                     51: 
                     52: echo "Done\n"; 
                     53: 
                     54: ?>
                     55: --EXPECTF--
                     56: *** Testing possible variations ***
                     57: -- 3rd or 4th arg as string --
                     58: int(1)
                     59: int(1)
                     60: 
                     61: Notice: A non well formed numeric value encountered in %s on line %d
                     62: int(2)
                     63: 
                     64: Notice: A non well formed numeric value encountered in %s on line %d
                     65: 
                     66: Notice: A non well formed numeric value encountered in %s on line %d
                     67: int(2)
                     68: 
                     69: -- 3rd or 4th arg as NULL --
                     70: 
                     71: Warning: substr_count() expects parameter 3 to be long, string given %s on line %d
                     72: NULL
                     73: 
                     74: Warning: substr_count() expects parameter 3 to be long, string given %s on line %d
                     75: NULL
                     76: 
                     77: Warning: substr_count() expects parameter 3 to be long, string given %s on line %d
                     78: NULL
                     79: int(0)
                     80: int(2)
                     81: 
                     82: -- overlapped substrings --
                     83: int(2)
                     84: int(2)
                     85: 
                     86: -- complex strings containing other than 7-bit chars --
                     87: int(2)
                     88: int(2)
                     89: int(1)
                     90: 
                     91: -- heredoc string --
                     92: int(14)
                     93: int(16)
                     94: 
                     95: -- heredoc null string --
                     96: int(0)
                     97: int(0)
                     98: int(0)
                     99: Done

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>