Skip to content

Commit 72ad63c

Browse files
committed
Imply UTF8 validity in implode function
1 parent 3310463 commit 72ad63c

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

ext/zend_test/tests/strings_marked_as_utf8.phpt

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,25 @@ $string = "\xff";
115115
$string_concat = str_repeat($string, 100);
116116
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
117117

118+
echo "implode:\n";
119+
$arr = ['a', 'b'];
120+
$string_concat = implode('', $arr);
121+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
122+
$string_concat = implode('|', [...$arr]);
123+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
124+
$string_concat = implode('', ['c', ...$arr]);
125+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
126+
$string_concat = implode('', [...$arr, 'c']);
127+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
128+
$string_concat = implode('', [...$arr, "\xff"]);
129+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
130+
$string_concat = implode("\xff", $arr);
131+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
132+
$string_concat = implode('', []);
133+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
134+
$string_concat = implode("\xff", []);
135+
var_dump(zend_test_is_string_marked_as_valid_utf8($string_concat));
136+
118137
?>
119138
--EXPECT--
120139
Empty strings:
@@ -159,3 +178,12 @@ bool(true)
159178
str_repeat:
160179
bool(true)
161180
bool(false)
181+
implode:
182+
bool(true)
183+
bool(true)
184+
bool(true)
185+
bool(true)
186+
bool(false)
187+
bool(false)
188+
bool(true)
189+
bool(true)

0 commit comments

Comments
 (0)