diff options
Diffstat (limited to 'ext/pcre/tests/bug27103.phpt')
| -rw-r--r-- | ext/pcre/tests/bug27103.phpt | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/ext/pcre/tests/bug27103.phpt b/ext/pcre/tests/bug27103.phpt new file mode 100644 index 0000000..163dc9f --- /dev/null +++ b/ext/pcre/tests/bug27103.phpt @@ -0,0 +1,43 @@ +--TEST-- +Bug #27103 (preg_split('//u') incorrectly splits UTF-8 strings into octets) +--SKIPIF-- +<?php +if (@preg_match('/./u', '') === false) { + die('skip no utf8 support in PCRE library'); +} +?> +--FILE-- +<?php +function iter($ar) +{ + foreach ($ar as $c) { + echo htmlentities($c, 0, "UTF-8"), ": ", strlen($c), "\n"; + } +} +$teststr = "\xe2\x82\xac hi there"; +iter(preg_split('//u', $teststr, -1, PREG_SPLIT_NO_EMPTY)); +preg_match_all('/./u', $teststr, $matches); +iter($matches[0]); +?> +--EXPECT-- +€: 3 + : 1 +h: 1 +i: 1 + : 1 +t: 1 +h: 1 +e: 1 +r: 1 +e: 1 +€: 3 + : 1 +h: 1 +i: 1 + : 1 +t: 1 +h: 1 +e: 1 +r: 1 +e: 1 + |
