summaryrefslogtreecommitdiff
path: root/ext/standard/tests/strings/substr_count_variation_001.phpt
diff options
context:
space:
mode:
authorAntony Dovgal <tony2001@php.net>2007-07-16 10:59:17 +0000
committerAntony Dovgal <tony2001@php.net>2007-07-16 10:59:17 +0000
commit2399b208db3f471461207d15b0e83c1995d2757c (patch)
tree01ab7f4c6c7a17344938a558c4cf7fbcfda5001a /ext/standard/tests/strings/substr_count_variation_001.phpt
parent76b92b6d5d212daadbc717d58cdfbb8280956d02 (diff)
downloadphp-git-2399b208db3f471461207d15b0e83c1995d2757c.tar.gz
MFH: split test
Diffstat (limited to 'ext/standard/tests/strings/substr_count_variation_001.phpt')
-rw-r--r--ext/standard/tests/strings/substr_count_variation_001.phpt87
1 files changed, 87 insertions, 0 deletions
diff --git a/ext/standard/tests/strings/substr_count_variation_001.phpt b/ext/standard/tests/strings/substr_count_variation_001.phpt
new file mode 100644
index 0000000000..cb6fc6bd3e
--- /dev/null
+++ b/ext/standard/tests/strings/substr_count_variation_001.phpt
@@ -0,0 +1,87 @@
+--TEST--
+Test substr_count() function (variation - 1)
+--FILE--
+<?php
+
+echo "\n*** Testing possible variations ***\n";
+echo "-- 3rd or 4th arg as string --\n";
+$str = "this is a string";
+var_dump( substr_count($str, "t", "5") );
+var_dump( substr_count($str, "t", "5", "10") );
+var_dump( substr_count($str, "i", "5t") );
+var_dump( substr_count($str, "i", "5t", "10t") );
+
+echo "\n-- 3rd or 4th arg as NULL --\n";
+var_dump( substr_count($str, "t", "") );
+var_dump( substr_count($str, "T", "") );
+var_dump( substr_count($str, "t", "", 15) );
+var_dump( substr_count($str, "I", NULL) );
+var_dump( substr_count($str, "i", NULL, 10) );
+
+echo "\n-- overlapped substrings --\n";
+var_dump( substr_count("abcabcabcabcabc", "abca") );
+var_dump( substr_count("abcabcabcabcabc", "abca", 2) );
+
+echo "\n-- complex strings containing other than 7-bit chars --\n";
+$str = chr(128).chr(129).chr(128).chr(256).chr(255).chr(254).chr(255);
+var_dump(substr_count($str, chr(128)));
+var_dump(substr_count($str, chr(255)));
+var_dump(substr_count($str, chr(256)));
+
+echo "\n-- heredoc string --\n";
+$string = <<<EOD
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+acdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+acdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz0123456789
+EOD;
+var_dump(substr_count($string, "abcd"));
+var_dump(substr_count($string, "1234"));
+
+echo "\n-- heredoc null string --\n";
+$str = <<<EOD
+EOD;
+var_dump(substr_count($str, "\0"));
+var_dump(substr_count($str, "\x000"));
+var_dump(substr_count($str, "0"));
+
+echo "Done\n";
+
+?>
+--EXPECTF--
+*** Testing possible variations ***
+-- 3rd or 4th arg as string --
+int(1)
+int(1)
+int(2)
+int(2)
+
+-- 3rd or 4th arg as NULL --
+int(2)
+int(0)
+int(2)
+int(0)
+int(2)
+
+-- overlapped substrings --
+int(2)
+int(2)
+
+-- complex strings containing other than 7-bit chars --
+int(2)
+int(2)
+int(1)
+
+-- heredoc string --
+int(14)
+int(16)
+
+-- heredoc null string --
+int(0)
+int(0)
+int(0)
+Done