summaryrefslogtreecommitdiff
path: root/ext/standard/tests/strings/explode_variation6.phpt
diff options
context:
space:
mode:
Diffstat (limited to 'ext/standard/tests/strings/explode_variation6.phpt')
-rw-r--r--ext/standard/tests/strings/explode_variation6.phpt70
1 files changed, 70 insertions, 0 deletions
diff --git a/ext/standard/tests/strings/explode_variation6.phpt b/ext/standard/tests/strings/explode_variation6.phpt
new file mode 100644
index 0000000000..d1b34e3ef8
--- /dev/null
+++ b/ext/standard/tests/strings/explode_variation6.phpt
@@ -0,0 +1,70 @@
+--TEST--
+Test explode() function : usage variations - misc tests
+--FILE--
+<?php
+
+/* Prototype : array explode ( string $delimiter , string $string [, int $limit ] )
+ * Description: Split a string by string.
+ * Source code: ext/standard/string.c
+*/
+
+echo "*** Testing explode() function: misc tests ***\n";
+
+$str = "one\x00two\x00three\x00four";
+
+echo "\n-- positive limit with null separator --\n";
+$e = test_explode("\x00", $str, 2);
+
+echo "\n-- negative limit (since PHP 5.1) with null separator --\n";
+$e = test_explode("\x00", $str, -2);
+
+echo "\n-- unknown string --\n";
+$e = test_explode("fred", $str,1);
+
+echo "\n-- limit = 0 --\n";
+$e = test_explode("\x00", $str, 0);
+
+echo "\n-- limit = -1 --\n";
+$e = test_explode("\x00", $str, -1);
+
+echo "\n-- large limit = -100 --\n";
+$e = test_explode("\x00", $str, 100);
+
+function test_explode($delim, $string, $limit)
+{
+ $e = explode($delim, $string, $limit);
+ foreach ( $e as $v)
+ {
+ var_dump(bin2hex($v));
+ }
+}
+?>
+===DONE===
+--EXPECT--
+*** Testing explode() function: misc tests ***
+
+-- positive limit with null separator --
+string(6) "6f6e65"
+string(28) "74776f00746872656500666f7572"
+
+-- negative limit (since PHP 5.1) with null separator --
+string(6) "6f6e65"
+string(6) "74776f"
+
+-- unknown string --
+string(36) "6f6e650074776f00746872656500666f7572"
+
+-- limit = 0 --
+string(36) "6f6e650074776f00746872656500666f7572"
+
+-- limit = -1 --
+string(6) "6f6e65"
+string(6) "74776f"
+string(10) "7468726565"
+
+-- large limit = -100 --
+string(6) "6f6e65"
+string(6) "74776f"
+string(10) "7468726565"
+string(8) "666f7572"
+===DONE=== \ No newline at end of file