diff --git a/Zend/tests/bug60569.phpt b/Zend/tests/bug60569.phpt index 480c9c8f8a..ef3bea8edb 100644 Binary files a/Zend/tests/bug60569.phpt and b/Zend/tests/bug60569.phpt differ diff --git a/Zend/tests/bug78363.phpt b/Zend/tests/bug78363.phpt index 0d17a1961c..d49d5fcdf4 100644 Binary files a/Zend/tests/bug78363.phpt and b/Zend/tests/bug78363.phpt differ diff --git a/Zend/tests/cast_to_array.phpt b/Zend/tests/cast_to_array.phpt index f43879df5f..ad8930fc60 100644 Binary files a/Zend/tests/cast_to_array.phpt and b/Zend/tests/cast_to_array.phpt differ diff --git a/Zend/tests/cast_to_object.phpt b/Zend/tests/cast_to_object.phpt index 2b0d22a6ec..6c3226d753 100644 Binary files a/Zend/tests/cast_to_object.phpt and b/Zend/tests/cast_to_object.phpt differ diff --git a/Zend/tests/cast_to_string.phpt b/Zend/tests/cast_to_string.phpt index 1fb94dfa8d..eabb51cb13 100644 Binary files a/Zend/tests/cast_to_string.phpt and b/Zend/tests/cast_to_string.phpt differ diff --git a/Zend/tests/settype_array.phpt b/Zend/tests/settype_array.phpt index 57c8e5180c..232c5d94a9 100644 Binary files a/Zend/tests/settype_array.phpt and b/Zend/tests/settype_array.phpt differ diff --git a/Zend/tests/settype_object.phpt b/Zend/tests/settype_object.phpt index 9369011127..7d98168e29 100644 Binary files a/Zend/tests/settype_object.phpt and b/Zend/tests/settype_object.phpt differ diff --git a/Zend/tests/settype_resource.phpt b/Zend/tests/settype_resource.phpt index 884ff3dae3..fa9ca739fa 100644 Binary files a/Zend/tests/settype_resource.phpt and b/Zend/tests/settype_resource.phpt differ diff --git a/Zend/tests/settype_string.phpt b/Zend/tests/settype_string.phpt index cc90fdfdf4..a8ad899c00 100644 Binary files a/Zend/tests/settype_string.phpt and b/Zend/tests/settype_string.phpt differ diff --git a/ext/curl/tests/curl_escape.phpt b/ext/curl/tests/curl_escape.phpt index 91dff3f056..b8f488ff34 100644 Binary files a/ext/curl/tests/curl_escape.phpt and b/ext/curl/tests/curl_escape.phpt differ diff --git a/ext/exif/tests/exif012.phpt b/ext/exif/tests/exif012.phpt index 2abd80943a..cd44c842f1 100644 Binary files a/ext/exif/tests/exif012.phpt and b/ext/exif/tests/exif012.phpt differ diff --git a/ext/exif/tests/exif013.phpt b/ext/exif/tests/exif013.phpt index 7e01e7fff9..767b0278ba 100644 Binary files a/ext/exif/tests/exif013.phpt and b/ext/exif/tests/exif013.phpt differ diff --git a/ext/exif/tests/exif014.phpt b/ext/exif/tests/exif014.phpt index b6c590c5f0..2b347126f2 100644 Binary files a/ext/exif/tests/exif014.phpt and b/ext/exif/tests/exif014.phpt differ diff --git a/ext/exif/tests/exif015.phpt b/ext/exif/tests/exif015.phpt index 83dc1f52c9..94b7abc216 100644 Binary files a/ext/exif/tests/exif015.phpt and b/ext/exif/tests/exif015.phpt differ diff --git a/ext/exif/tests/exif020.phpt b/ext/exif/tests/exif020.phpt index 8f3d9befe1..cb9af4d7c8 100644 --- a/ext/exif/tests/exif020.phpt +++ b/ext/exif/tests/exif020.phpt @@ -1618,7 +1618,7 @@ array(34) { ["Copyright"]=> string(12) "Eric Stewart" ["GPSVersion"]=> - string(4) "" + string(4) "%0%0" ["GPSLatitudeRef"]=> string(1) "N" ["GPSLatitude"]=> @@ -1642,7 +1642,7 @@ array(34) { string(3) "0/1" } ["GPSAltitudeRef"]=> - string(1) "" + string(1) "%0" ["GPSAltitude"]=> string(5) "295/1" ["GPSTimeStamp"]=> diff --git a/ext/exif/tests/exif021.phpt b/ext/exif/tests/exif021.phpt index 7bd2b1efa9..013b5c887f 100644 --- a/ext/exif/tests/exif021.phpt +++ b/ext/exif/tests/exif021.phpt @@ -1618,7 +1618,7 @@ array(34) { ["Copyright"]=> string(12) "Eric Stewart" ["GPSVersion"]=> - string(4) "" + string(4) "%0%0" ["GPSLatitudeRef"]=> string(1) "N" ["GPSLatitude"]=> @@ -1642,7 +1642,7 @@ array(34) { string(3) "0/1" } ["GPSAltitudeRef"]=> - string(1) "" + string(1) "%0" ["GPSAltitude"]=> string(5) "295/1" ["GPSTimeStamp"]=> diff --git a/ext/exif/tests/exif022.phpt b/ext/exif/tests/exif022.phpt index 80f668013e..4b0659bbf7 100644 --- a/ext/exif/tests/exif022.phpt +++ b/ext/exif/tests/exif022.phpt @@ -1642,7 +1642,7 @@ array(45) { ["ExifImageLength"]=> int(1) ["GPSVersion"]=> - string(4) "" + string(4) "%0%0" ["GPSLatitudeRef"]=> string(1) "N" ["GPSLatitude"]=> @@ -1666,7 +1666,7 @@ array(45) { string(3) "0/1" } ["GPSAltitudeRef"]=> - string(1) "" + string(1) "%0" ["GPSAltitude"]=> string(5) "295/1" ["GPSTimeStamp"]=> diff --git a/ext/exif/tests/exif023.phpt b/ext/exif/tests/exif023.phpt index 6bab7e58a2..b3e2456e7b 100644 --- a/ext/exif/tests/exif023.phpt +++ b/ext/exif/tests/exif023.phpt @@ -1642,7 +1642,7 @@ array(45) { ["ExifImageLength"]=> int(1) ["GPSVersion"]=> - string(4) "" + string(4) "%0%0" ["GPSLatitudeRef"]=> string(1) "N" ["GPSLatitude"]=> @@ -1666,7 +1666,7 @@ array(45) { string(3) "0/1" } ["GPSAltitudeRef"]=> - string(1) "" + string(1) "%0" ["GPSAltitude"]=> string(5) "295/1" ["GPSTimeStamp"]=> diff --git a/ext/ftp/tests/ftp_fget_basic.phpt b/ext/ftp/tests/ftp_fget_basic.phpt index e2e0ac5540..938d11b767 100644 --- a/ext/ftp/tests/ftp_fget_basic.phpt +++ b/ext/ftp/tests/ftp_fget_basic.phpt @@ -24,7 +24,7 @@ $position = ftell($fp); //test binary data transfer var_dump(ftp_fget($ftp, $fp, 'binary data.bin', FTP_BINARY)); fseek($fp, $position); -var_dump(urlencode(fgets($fp))); +echo json_encode(fgets($fp)), "\n"; //test non-existent file request ftp_fget($ftp, $fp ,'a warning.txt', FTP_ASCII); @@ -37,6 +37,6 @@ bool(true) bool(true) For sale: baby shoes, never worn. bool(true) -string(21) "BINARYFoo%00Bar%0D%0A" +"BINARYFoo\u0000Bar\r\n" Warning: ftp_fget(): a warning: No such file or directory in %sftp_fget_basic.php on line %d diff --git a/ext/ftp/tests/ftp_get_basic.phpt b/ext/ftp/tests/ftp_get_basic.phpt index 0ce3345266..1791002765 100644 --- a/ext/ftp/tests/ftp_get_basic.phpt +++ b/ext/ftp/tests/ftp_get_basic.phpt @@ -23,7 +23,7 @@ unlink($tmpfname); //test binary data transfer $tmpfname = tempnam(__DIR__, "ftp_test"); var_dump(ftp_get($ftp, $tmpfname, 'binary data.bin', FTP_BINARY)); -var_dump(urlencode(file_get_contents($tmpfname))); +echo json_encode(file_get_contents($tmpfname)), "\n"; unlink($tmpfname); //test non-existent file request @@ -34,6 +34,6 @@ bool(true) bool(true) For sale: baby shoes, never worn. bool(true) -string(21) "BINARYFoo%00Bar%0D%0A" +"BINARYFoo\u0000Bar\r\n" Warning: ftp_get(): a warning: No such file or directory in %sftp_get_basic.php on line %d diff --git a/ext/oci8/tests/lob_001.phpt b/ext/oci8/tests/lob_001.phpt index c94f5201e7..2e2a549df8 100644 Binary files a/ext/oci8/tests/lob_001.phpt and b/ext/oci8/tests/lob_001.phpt differ diff --git a/ext/oci8/tests/lob_003.phpt b/ext/oci8/tests/lob_003.phpt index e06d15109c..4ffdceecca 100644 Binary files a/ext/oci8/tests/lob_003.phpt and b/ext/oci8/tests/lob_003.phpt differ diff --git a/ext/oci8/tests/lob_006.phpt b/ext/oci8/tests/lob_006.phpt index 748283870a..4576e428d6 100644 Binary files a/ext/oci8/tests/lob_006.phpt and b/ext/oci8/tests/lob_006.phpt differ diff --git a/ext/oci8/tests/lob_019.phpt b/ext/oci8/tests/lob_019.phpt index 248bff70d5..6bdbeb926c 100644 Binary files a/ext/oci8/tests/lob_019.phpt and b/ext/oci8/tests/lob_019.phpt differ diff --git a/ext/oci8/tests/lob_020.phpt b/ext/oci8/tests/lob_020.phpt index 241b2c7c30..2057b99723 100644 Binary files a/ext/oci8/tests/lob_020.phpt and b/ext/oci8/tests/lob_020.phpt differ diff --git a/ext/opcache/tests/compact_literals_collision.phpt b/ext/opcache/tests/compact_literals_collision.phpt index bf553793ce..617e4dcffa 100644 Binary files a/ext/opcache/tests/compact_literals_collision.phpt and b/ext/opcache/tests/compact_literals_collision.phpt differ diff --git a/ext/pdo_mysql/tests/bug_39483.phpt b/ext/pdo_mysql/tests/bug_39483.phpt index 1d9512904c..2a72ff3a9c 100644 Binary files a/ext/pdo_mysql/tests/bug_39483.phpt and b/ext/pdo_mysql/tests/bug_39483.phpt differ diff --git a/ext/spl/tests/array_018.phpt b/ext/spl/tests/array_018.phpt index 8da46a24db..948e0dca4e 100644 Binary files a/ext/spl/tests/array_018.phpt and b/ext/spl/tests/array_018.phpt differ diff --git a/ext/spl/tests/iterator_049b.phpt b/ext/spl/tests/iterator_049b.phpt index 54a2c2e040..1e1176c716 100644 Binary files a/ext/spl/tests/iterator_049b.phpt and b/ext/spl/tests/iterator_049b.phpt differ diff --git a/ext/spl/tests/serialize_property_tables.phpt b/ext/spl/tests/serialize_property_tables.phpt index 9b507e6f8e..6626830d29 100644 Binary files a/ext/spl/tests/serialize_property_tables.phpt and b/ext/spl/tests/serialize_property_tables.phpt differ diff --git a/ext/standard/tests/array/array_flip_variation2.phpt b/ext/standard/tests/array/array_flip_variation2.phpt index 8bf704627e..890b4cd2ec 100644 Binary files a/ext/standard/tests/array/array_flip_variation2.phpt and b/ext/standard/tests/array/array_flip_variation2.phpt differ diff --git a/ext/standard/tests/array/array_flip_variation3.phpt b/ext/standard/tests/array/array_flip_variation3.phpt index 3c8f41cc3b..bf979235cf 100644 Binary files a/ext/standard/tests/array/array_flip_variation3.phpt and b/ext/standard/tests/array/array_flip_variation3.phpt differ diff --git a/ext/standard/tests/array/array_search.phpt b/ext/standard/tests/array/array_search.phpt index 1787e52163..6219efd320 100644 Binary files a/ext/standard/tests/array/array_search.phpt and b/ext/standard/tests/array/array_search.phpt differ diff --git a/ext/standard/tests/array/array_values.phpt b/ext/standard/tests/array/array_values.phpt index 32200a67f5..443a46763e 100644 Binary files a/ext/standard/tests/array/array_values.phpt and b/ext/standard/tests/array/array_values.phpt differ diff --git a/ext/standard/tests/array/array_walk_rec_objects.phpt b/ext/standard/tests/array/array_walk_rec_objects.phpt index a3513437a2..91a97437d2 100644 Binary files a/ext/standard/tests/array/array_walk_rec_objects.phpt and b/ext/standard/tests/array/array_walk_rec_objects.phpt differ diff --git a/ext/standard/tests/array/arsort_variation11.phpt b/ext/standard/tests/array/arsort_variation11.phpt index 2da7a6fce3..b5405ac3d5 100644 Binary files a/ext/standard/tests/array/arsort_variation11.phpt and b/ext/standard/tests/array/arsort_variation11.phpt differ diff --git a/ext/standard/tests/array/asort_variation11.phpt b/ext/standard/tests/array/asort_variation11.phpt index e6112672a6..82eab55993 100644 Binary files a/ext/standard/tests/array/asort_variation11.phpt and b/ext/standard/tests/array/asort_variation11.phpt differ diff --git a/ext/standard/tests/array/bug26458.phpt b/ext/standard/tests/array/bug26458.phpt index 87c8b519bf..67c1586d00 100644 Binary files a/ext/standard/tests/array/bug26458.phpt and b/ext/standard/tests/array/bug26458.phpt differ diff --git a/ext/standard/tests/array/krsort_variation8.phpt b/ext/standard/tests/array/krsort_variation8.phpt index ff843f0b97..caa0f21936 100644 Binary files a/ext/standard/tests/array/krsort_variation8.phpt and b/ext/standard/tests/array/krsort_variation8.phpt differ diff --git a/ext/standard/tests/array/ksort_variation8.phpt b/ext/standard/tests/array/ksort_variation8.phpt index fe27e6328d..10ed218211 100644 Binary files a/ext/standard/tests/array/ksort_variation8.phpt and b/ext/standard/tests/array/ksort_variation8.phpt differ diff --git a/ext/standard/tests/array/natcasesort_variation9.phpt b/ext/standard/tests/array/natcasesort_variation9.phpt index 6bd10338b6..037db9e742 100644 Binary files a/ext/standard/tests/array/natcasesort_variation9.phpt and b/ext/standard/tests/array/natcasesort_variation9.phpt differ diff --git a/ext/standard/tests/array/rsort_variation11.phpt b/ext/standard/tests/array/rsort_variation11.phpt index 479f90f033..fe91f79e18 100644 Binary files a/ext/standard/tests/array/rsort_variation11.phpt and b/ext/standard/tests/array/rsort_variation11.phpt differ diff --git a/ext/standard/tests/array/sort_variation11.phpt b/ext/standard/tests/array/sort_variation11.phpt index f72a79bf9b..909a5546d2 100644 Binary files a/ext/standard/tests/array/sort_variation11.phpt and b/ext/standard/tests/array/sort_variation11.phpt differ diff --git a/ext/standard/tests/array/uasort_variation3.phpt b/ext/standard/tests/array/uasort_variation3.phpt index 15f1884a7b..16144c5cc2 100644 Binary files a/ext/standard/tests/array/uasort_variation3.phpt and b/ext/standard/tests/array/uasort_variation3.phpt differ diff --git a/ext/standard/tests/class_object/get_object_vars_variation_004.phpt b/ext/standard/tests/class_object/get_object_vars_variation_004.phpt index 7c21b903ad..710ea93479 100644 Binary files a/ext/standard/tests/class_object/get_object_vars_variation_004.phpt and b/ext/standard/tests/class_object/get_object_vars_variation_004.phpt differ diff --git a/ext/standard/tests/class_object/get_object_vars_variation_005.phpt b/ext/standard/tests/class_object/get_object_vars_variation_005.phpt index d33ef4879f..1ad1bb3933 100644 Binary files a/ext/standard/tests/class_object/get_object_vars_variation_005.phpt and b/ext/standard/tests/class_object/get_object_vars_variation_005.phpt differ diff --git a/ext/standard/tests/file/basename.phpt b/ext/standard/tests/file/basename.phpt index c2dbf34f51..c84825edea 100644 Binary files a/ext/standard/tests/file/basename.phpt and b/ext/standard/tests/file/basename.phpt differ diff --git a/ext/standard/tests/file/bug26003.phpt b/ext/standard/tests/file/bug26003.phpt index aaf3b34135..1f31764130 100644 Binary files a/ext/standard/tests/file/bug26003.phpt and b/ext/standard/tests/file/bug26003.phpt differ diff --git a/ext/standard/tests/file/fputcsv_variation17.phpt b/ext/standard/tests/file/fputcsv_variation17.phpt index 581bd2cd77..9592154f42 100644 Binary files a/ext/standard/tests/file/fputcsv_variation17.phpt and b/ext/standard/tests/file/fputcsv_variation17.phpt differ diff --git a/ext/standard/tests/file/ftruncate.phpt b/ext/standard/tests/file/ftruncate.phpt index 757bbb733d..2bdefefaaf 100644 Binary files a/ext/standard/tests/file/ftruncate.phpt and b/ext/standard/tests/file/ftruncate.phpt differ diff --git a/ext/standard/tests/file/readfile_variation10.phpt b/ext/standard/tests/file/readfile_variation10.phpt index a2fc2d79cb..5afc5622ed 100644 Binary files a/ext/standard/tests/file/readfile_variation10.phpt and b/ext/standard/tests/file/readfile_variation10.phpt differ diff --git a/ext/standard/tests/general_functions/debug_zval_dump_b.phpt b/ext/standard/tests/general_functions/debug_zval_dump_b.phpt index 0444ade190..70402f2583 100644 Binary files a/ext/standard/tests/general_functions/debug_zval_dump_b.phpt and b/ext/standard/tests/general_functions/debug_zval_dump_b.phpt differ diff --git a/ext/standard/tests/general_functions/debug_zval_dump_b_64bit.phpt b/ext/standard/tests/general_functions/debug_zval_dump_b_64bit.phpt index 9302593cb2..07132d9213 100644 Binary files a/ext/standard/tests/general_functions/debug_zval_dump_b_64bit.phpt and b/ext/standard/tests/general_functions/debug_zval_dump_b_64bit.phpt differ diff --git a/ext/standard/tests/general_functions/print_r.phpt b/ext/standard/tests/general_functions/print_r.phpt index 0c0d775961..112e436d4e 100644 --- a/ext/standard/tests/general_functions/print_r.phpt +++ b/ext/standard/tests/general_functions/print_r.phpt @@ -271,7 +271,7 @@ closedir($dir_handle); echo "Done\n"; ?> ---EXPECT-- +--EXPECTF-- *** Testing print_r() on integer variables *** -- Iteration 1 -- @@ -565,9 +565,9 @@ Array 0 0 -- Iteration 6 -- - - - +%0 +%0 +%0 -- Iteration 7 -- \0 \0 @@ -589,13 +589,13 @@ PHP PHP PHP -- Iteration 12 -- -abcdn12340567800efgh\xijkl -abcdn12340567800efgh\xijkl -abcdn12340567800efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl -- Iteration 13 -- -abcdefghijklmnop0qrstuvwx0yz -abcdefghijklmnop0qrstuvwx0yz -abcdefghijklmnop0qrstuvwx0yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz -- Iteration 14 -- 1234 5678 diff --git a/ext/standard/tests/general_functions/print_r_64bit.phpt b/ext/standard/tests/general_functions/print_r_64bit.phpt index 56153e7682..1d61df4f9f 100644 --- a/ext/standard/tests/general_functions/print_r_64bit.phpt +++ b/ext/standard/tests/general_functions/print_r_64bit.phpt @@ -275,7 +275,7 @@ closedir($dir_handle); echo "Done\n"; ?> ---EXPECT-- +--EXPECTF-- *** Testing print_r() on integer variables *** -- Iteration 1 -- @@ -569,9 +569,9 @@ Array 0 0 -- Iteration 6 -- - - - +%0 +%0 +%0 -- Iteration 7 -- \0 \0 @@ -593,13 +593,13 @@ PHP PHP PHP -- Iteration 12 -- -abcdn12340567800efgh\xijkl -abcdn12340567800efgh\xijkl -abcdn12340567800efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl +abcd%0n1234%005678%000efgh\xijkl -- Iteration 13 -- -abcdefghijklmnop0qrstuvwx0yz -abcdefghijklmnop0qrstuvwx0yz -abcdefghijklmnop0qrstuvwx0yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz +abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz -- Iteration 14 -- 1234 5678 diff --git a/ext/standard/tests/general_functions/var_dump.phpt b/ext/standard/tests/general_functions/var_dump.phpt index 58dea7b61e..32f5c9ab39 100644 --- a/ext/standard/tests/general_functions/var_dump.phpt +++ b/ext/standard/tests/general_functions/var_dump.phpt @@ -427,7 +427,7 @@ string(1) " " -- Iteration 5 -- string(1) "0" -- Iteration 6 -- -string(1) "" +string(1) "%0" -- Iteration 7 -- string(2) "\0" -- Iteration 8 -- @@ -439,9 +439,9 @@ string(3) "PHP" -- Iteration 11 -- string(3) "PHP" -- Iteration 12 -- -string(29) "abcdn12340567800efgh\xijkl" +string(29) "abcd%0n1234%005678%000efgh\xijkl" -- Iteration 13 -- -string(34) "abcdefghijklmnop0qrstuvwx0yz" +string(34) "abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz" -- Iteration 14 -- string(22) "1234 5678 @@ -1081,7 +1081,7 @@ array(14) { [4]=> string(1) "0" [5]=> - string(1) "" + string(1) "%0" [6]=> string(2) "\0" [7]=> @@ -1093,9 +1093,9 @@ array(14) { [10]=> string(3) "PHP" [11]=> - string(29) "abcdn12340567800efgh\xijkl" + string(29) "abcd%0n1234%005678%000efgh\xijkl" [12]=> - string(34) "abcdefghijklmnop0qrstuvwx0yz" + string(34) "abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz" [13]=> string(22) "1234 5678 diff --git a/ext/standard/tests/general_functions/var_dump_64bit.phpt b/ext/standard/tests/general_functions/var_dump_64bit.phpt index e6ac7f15cb..463308427a 100644 --- a/ext/standard/tests/general_functions/var_dump_64bit.phpt +++ b/ext/standard/tests/general_functions/var_dump_64bit.phpt @@ -274,7 +274,7 @@ closedir($dir_handle); echo "Done\n"; ?> ---EXPECT-- +--EXPECTF-- *** Testing var_dump() on integer variables *** -- Iteration 1 -- int(0) @@ -427,7 +427,7 @@ string(1) " " -- Iteration 5 -- string(1) "0" -- Iteration 6 -- -string(1) "" +string(1) "%0" -- Iteration 7 -- string(2) "\0" -- Iteration 8 -- @@ -439,9 +439,9 @@ string(3) "PHP" -- Iteration 11 -- string(3) "PHP" -- Iteration 12 -- -string(29) "abcdn12340567800efgh\xijkl" +string(29) "abcd%0n1234%005678%000efgh\xijkl" -- Iteration 13 -- -string(34) "abcdefghijklmnop0qrstuvwx0yz" +string(34) "abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz" -- Iteration 14 -- string(22) "1234 5678 @@ -1081,7 +1081,7 @@ array(14) { [4]=> string(1) "0" [5]=> - string(1) "" + string(1) "%0" [6]=> string(2) "\0" [7]=> @@ -1093,9 +1093,9 @@ array(14) { [10]=> string(3) "PHP" [11]=> - string(29) "abcdn12340567800efgh\xijkl" + string(29) "abcd%0n1234%005678%000efgh\xijkl" [12]=> - string(34) "abcdefghijklmnop0qrstuvwx0yz" + string(34) "abcd%0efgh%0ijkl%0mnop%00qrst%0uvwx%00yz" [13]=> string(22) "1234 5678 diff --git a/ext/standard/tests/math/bug62112.phpt b/ext/standard/tests/math/bug62112.phpt index eb6b0889de..ead5526e74 100644 Binary files a/ext/standard/tests/math/bug62112.phpt and b/ext/standard/tests/math/bug62112.phpt differ diff --git a/ext/standard/tests/serialize/serialization_miscTypes_001.phpt b/ext/standard/tests/serialize/serialization_miscTypes_001.phpt index 50a96b2f7b..ea5a0fd808 100644 Binary files a/ext/standard/tests/serialize/serialization_miscTypes_001.phpt and b/ext/standard/tests/serialize/serialization_miscTypes_001.phpt differ diff --git a/ext/standard/tests/serialize/serialization_objects_001.phpt b/ext/standard/tests/serialize/serialization_objects_001.phpt index d1f26604fc..f310914bf7 100644 Binary files a/ext/standard/tests/serialize/serialization_objects_001.phpt and b/ext/standard/tests/serialize/serialization_objects_001.phpt differ diff --git a/ext/standard/tests/serialize/serialization_objects_002.phpt b/ext/standard/tests/serialize/serialization_objects_002.phpt index 211ba10187..26766d80f0 100644 Binary files a/ext/standard/tests/serialize/serialization_objects_002.phpt and b/ext/standard/tests/serialize/serialization_objects_002.phpt differ diff --git a/ext/standard/tests/strings/addcslashes_001.phpt b/ext/standard/tests/strings/addcslashes_001.phpt index e8fdf2b69a..878ac4bf74 100644 Binary files a/ext/standard/tests/strings/addcslashes_001.phpt and b/ext/standard/tests/strings/addcslashes_001.phpt differ diff --git a/ext/standard/tests/strings/addcslashes_003.phpt b/ext/standard/tests/strings/addcslashes_003.phpt index 7736a9f58f..8abcb35843 100644 Binary files a/ext/standard/tests/strings/addcslashes_003.phpt and b/ext/standard/tests/strings/addcslashes_003.phpt differ diff --git a/ext/standard/tests/strings/basename.phpt b/ext/standard/tests/strings/basename.phpt index 1f69bf4bce..303aa6c2a8 100644 Binary files a/ext/standard/tests/strings/basename.phpt and b/ext/standard/tests/strings/basename.phpt differ diff --git a/ext/standard/tests/strings/basename_basic.phpt b/ext/standard/tests/strings/basename_basic.phpt index 80d4789c7c..7506045a74 100644 Binary files a/ext/standard/tests/strings/basename_basic.phpt and b/ext/standard/tests/strings/basename_basic.phpt differ diff --git a/ext/standard/tests/strings/bug39621.phpt b/ext/standard/tests/strings/bug39621.phpt index 9297050a99..d6ba790d80 100644 Binary files a/ext/standard/tests/strings/bug39621.phpt and b/ext/standard/tests/strings/bug39621.phpt differ diff --git a/ext/standard/tests/strings/bug40915.phpt b/ext/standard/tests/strings/bug40915.phpt index 88674ee953..9759700737 100644 Binary files a/ext/standard/tests/strings/bug40915.phpt and b/ext/standard/tests/strings/bug40915.phpt differ diff --git a/ext/standard/tests/strings/bug60801.phpt b/ext/standard/tests/strings/bug60801.phpt index 9587bdafa4..a87f4756a4 100644 Binary files a/ext/standard/tests/strings/bug60801.phpt and b/ext/standard/tests/strings/bug60801.phpt differ diff --git a/ext/standard/tests/strings/chop_basic.phpt b/ext/standard/tests/strings/chop_basic.phpt index c9302a80ae..4a11f9c3a0 100644 Binary files a/ext/standard/tests/strings/chop_basic.phpt and b/ext/standard/tests/strings/chop_basic.phpt differ diff --git a/ext/standard/tests/strings/chop_variation3.phpt b/ext/standard/tests/strings/chop_variation3.phpt index be545a1cdc..f1ffce9a03 100644 Binary files a/ext/standard/tests/strings/chop_variation3.phpt and b/ext/standard/tests/strings/chop_variation3.phpt differ diff --git a/ext/standard/tests/strings/chop_variation4.phpt b/ext/standard/tests/strings/chop_variation4.phpt index 0bb1c70203..8b49b253cd 100644 Binary files a/ext/standard/tests/strings/chop_variation4.phpt and b/ext/standard/tests/strings/chop_variation4.phpt differ diff --git a/ext/standard/tests/strings/chunk_split_variation5.phpt b/ext/standard/tests/strings/chunk_split_variation5.phpt index 9e59d67658..8f51c001ee 100644 Binary files a/ext/standard/tests/strings/chunk_split_variation5.phpt and b/ext/standard/tests/strings/chunk_split_variation5.phpt differ diff --git a/ext/standard/tests/strings/chunk_split_variation7.phpt b/ext/standard/tests/strings/chunk_split_variation7.phpt index 9844f2097b..7a2af6aa27 100644 Binary files a/ext/standard/tests/strings/chunk_split_variation7.phpt and b/ext/standard/tests/strings/chunk_split_variation7.phpt differ diff --git a/ext/standard/tests/strings/chunk_split_variation9.phpt b/ext/standard/tests/strings/chunk_split_variation9.phpt index 526a2cd569..c2d76676fd 100644 Binary files a/ext/standard/tests/strings/chunk_split_variation9.phpt and b/ext/standard/tests/strings/chunk_split_variation9.phpt differ diff --git a/ext/standard/tests/strings/fprintf_variation_004.phpt b/ext/standard/tests/strings/fprintf_variation_004.phpt index 103ca579f4..a72f46b359 100644 Binary files a/ext/standard/tests/strings/fprintf_variation_004.phpt and b/ext/standard/tests/strings/fprintf_variation_004.phpt differ diff --git a/ext/standard/tests/strings/htmlspecialchars_decode_variation6.phpt b/ext/standard/tests/strings/htmlspecialchars_decode_variation6.phpt index 9a828b911d..4539707ca6 100644 Binary files a/ext/standard/tests/strings/htmlspecialchars_decode_variation6.phpt and b/ext/standard/tests/strings/htmlspecialchars_decode_variation6.phpt differ diff --git a/ext/standard/tests/strings/implode1.phpt b/ext/standard/tests/strings/implode1.phpt index ca12110211..7092efe942 100644 Binary files a/ext/standard/tests/strings/implode1.phpt and b/ext/standard/tests/strings/implode1.phpt differ diff --git a/ext/standard/tests/strings/join_variation4.phpt b/ext/standard/tests/strings/join_variation4.phpt index 314345547c..21774b4bca 100644 Binary files a/ext/standard/tests/strings/join_variation4.phpt and b/ext/standard/tests/strings/join_variation4.phpt differ diff --git a/ext/standard/tests/strings/join_variation6.phpt b/ext/standard/tests/strings/join_variation6.phpt index 010e449085..44573274a6 100644 Binary files a/ext/standard/tests/strings/join_variation6.phpt and b/ext/standard/tests/strings/join_variation6.phpt differ diff --git a/ext/standard/tests/strings/lcfirst.phpt b/ext/standard/tests/strings/lcfirst.phpt index fc0b954199..d98b3a9cb0 100644 Binary files a/ext/standard/tests/strings/lcfirst.phpt and b/ext/standard/tests/strings/lcfirst.phpt differ diff --git a/ext/standard/tests/strings/md5_file.phpt b/ext/standard/tests/strings/md5_file.phpt index c975c85cb7..7acb81c3a4 100644 Binary files a/ext/standard/tests/strings/md5_file.phpt and b/ext/standard/tests/strings/md5_file.phpt differ diff --git a/ext/standard/tests/strings/parse_str_basic3.phpt b/ext/standard/tests/strings/parse_str_basic3.phpt index a15edd529f..387bf7589e 100644 Binary files a/ext/standard/tests/strings/parse_str_basic3.phpt and b/ext/standard/tests/strings/parse_str_basic3.phpt differ diff --git a/ext/standard/tests/strings/printf.phpt b/ext/standard/tests/strings/printf.phpt index 8ff95eb5d6..25b361cb81 100644 --- a/ext/standard/tests/strings/printf.phpt +++ b/ext/standard/tests/strings/printf.phpt @@ -486,8 +486,8 @@ Array [4] => 99 ) - - +%0 +%0 C ½ c @@ -595,7 +595,7 @@ Array ( [0] => %5s [1] => %-5s - [2] => %05s + [2] => %r%%r05s [3] => %'#5s ) diff --git a/ext/standard/tests/strings/printf_64bit.phpt b/ext/standard/tests/strings/printf_64bit.phpt index a37ad49c3d..083b7b2979 100644 --- a/ext/standard/tests/strings/printf_64bit.phpt +++ b/ext/standard/tests/strings/printf_64bit.phpt @@ -486,8 +486,8 @@ Array [4] => 99 ) - - +%0 +%0 C ½ c @@ -595,7 +595,7 @@ Array ( [0] => %5s [1] => %-5s - [2] => %05s + [2] => %r%%r05s [3] => %'#5s ) diff --git a/ext/standard/tests/strings/quoted_printable_encode_002.phpt b/ext/standard/tests/strings/quoted_printable_encode_002.phpt index b01b6957c9..795c30fb25 100644 Binary files a/ext/standard/tests/strings/quoted_printable_encode_002.phpt and b/ext/standard/tests/strings/quoted_printable_encode_002.phpt differ diff --git a/ext/standard/tests/strings/rtrim.phpt b/ext/standard/tests/strings/rtrim.phpt index b4cd2ac6ac..21e91c1ac3 100644 Binary files a/ext/standard/tests/strings/rtrim.phpt and b/ext/standard/tests/strings/rtrim.phpt differ diff --git a/ext/standard/tests/strings/sprintf_variation15.phpt b/ext/standard/tests/strings/sprintf_variation15.phpt index e23fe1147f..3b1abe756a 100644 Binary files a/ext/standard/tests/strings/sprintf_variation15.phpt and b/ext/standard/tests/strings/sprintf_variation15.phpt differ diff --git a/ext/standard/tests/strings/sprintf_variation27.phpt b/ext/standard/tests/strings/sprintf_variation27.phpt index d0430d2049..0d4516e01b 100644 Binary files a/ext/standard/tests/strings/sprintf_variation27.phpt and b/ext/standard/tests/strings/sprintf_variation27.phpt differ diff --git a/ext/standard/tests/strings/sprintf_variation54.phpt b/ext/standard/tests/strings/sprintf_variation54.phpt index 51a4e48827..e925293cee 100644 Binary files a/ext/standard/tests/strings/sprintf_variation54.phpt and b/ext/standard/tests/strings/sprintf_variation54.phpt differ diff --git a/ext/standard/tests/strings/str_repeat.phpt b/ext/standard/tests/strings/str_repeat.phpt index 6eef67ae57..3351e7f871 100644 Binary files a/ext/standard/tests/strings/str_repeat.phpt and b/ext/standard/tests/strings/str_repeat.phpt differ diff --git a/ext/standard/tests/strings/str_replace_variation2.phpt b/ext/standard/tests/strings/str_replace_variation2.phpt index 77dc6ae822..957c990555 100644 Binary files a/ext/standard/tests/strings/str_replace_variation2.phpt and b/ext/standard/tests/strings/str_replace_variation2.phpt differ diff --git a/ext/standard/tests/strings/str_split_variation3.phpt b/ext/standard/tests/strings/str_split_variation3.phpt index dc8d9783fb..7003d62eaa 100644 Binary files a/ext/standard/tests/strings/str_split_variation3.phpt and b/ext/standard/tests/strings/str_split_variation3.phpt differ diff --git a/ext/standard/tests/strings/strcasecmp.phpt b/ext/standard/tests/strings/strcasecmp.phpt index 3c07539bd5..04452067d4 100644 Binary files a/ext/standard/tests/strings/strcasecmp.phpt and b/ext/standard/tests/strings/strcasecmp.phpt differ diff --git a/ext/standard/tests/strings/strcmp.phpt b/ext/standard/tests/strings/strcmp.phpt index d5f338844e..a36873830c 100644 Binary files a/ext/standard/tests/strings/strcmp.phpt and b/ext/standard/tests/strings/strcmp.phpt differ diff --git a/ext/standard/tests/strings/strcspn_variation5.phpt b/ext/standard/tests/strings/strcspn_variation5.phpt index e6fcae9220..699e638754 100644 Binary files a/ext/standard/tests/strings/strcspn_variation5.phpt and b/ext/standard/tests/strings/strcspn_variation5.phpt differ diff --git a/ext/standard/tests/strings/strcspn_variation9.phpt b/ext/standard/tests/strings/strcspn_variation9.phpt index 6fd70827a5..d4286e2ca1 100644 Binary files a/ext/standard/tests/strings/strcspn_variation9.phpt and b/ext/standard/tests/strings/strcspn_variation9.phpt differ diff --git a/ext/standard/tests/strings/stripslashes_basic.phpt b/ext/standard/tests/strings/stripslashes_basic.phpt index f1da924fee..60c4d995cb 100644 Binary files a/ext/standard/tests/strings/stripslashes_basic.phpt and b/ext/standard/tests/strings/stripslashes_basic.phpt differ diff --git a/ext/standard/tests/strings/stripslashes_variation2.phpt b/ext/standard/tests/strings/stripslashes_variation2.phpt index d0d474d14d..ecf6ae8a6f 100644 Binary files a/ext/standard/tests/strings/stripslashes_variation2.phpt and b/ext/standard/tests/strings/stripslashes_variation2.phpt differ diff --git a/ext/standard/tests/strings/strlen.phpt b/ext/standard/tests/strings/strlen.phpt index 374001eed9..426154504b 100644 Binary files a/ext/standard/tests/strings/strlen.phpt and b/ext/standard/tests/strings/strlen.phpt differ diff --git a/ext/standard/tests/strings/strpos.phpt b/ext/standard/tests/strings/strpos.phpt index 267bc590c5..449601f6e5 100644 Binary files a/ext/standard/tests/strings/strpos.phpt and b/ext/standard/tests/strings/strpos.phpt differ diff --git a/ext/standard/tests/strings/strrchr_variation1.phpt b/ext/standard/tests/strings/strrchr_variation1.phpt index a913a2045a..3e71728ef8 100644 Binary files a/ext/standard/tests/strings/strrchr_variation1.phpt and b/ext/standard/tests/strings/strrchr_variation1.phpt differ diff --git a/ext/standard/tests/strings/strrchr_variation12.phpt b/ext/standard/tests/strings/strrchr_variation12.phpt index abe5bfae65..84b9eb762f 100644 Binary files a/ext/standard/tests/strings/strrchr_variation12.phpt and b/ext/standard/tests/strings/strrchr_variation12.phpt differ diff --git a/ext/standard/tests/strings/strrev_variation1.phpt b/ext/standard/tests/strings/strrev_variation1.phpt index 0ed3acd5b5..3c4fb79a6c 100644 Binary files a/ext/standard/tests/strings/strrev_variation1.phpt and b/ext/standard/tests/strings/strrev_variation1.phpt differ diff --git a/ext/standard/tests/strings/strrev_variation2.phpt b/ext/standard/tests/strings/strrev_variation2.phpt index 92f45d7df9..45036f6f88 100644 Binary files a/ext/standard/tests/strings/strrev_variation2.phpt and b/ext/standard/tests/strings/strrev_variation2.phpt differ diff --git a/ext/standard/tests/strings/strrev_variation3.phpt b/ext/standard/tests/strings/strrev_variation3.phpt index c83a241d09..eab673f974 100644 Binary files a/ext/standard/tests/strings/strrev_variation3.phpt and b/ext/standard/tests/strings/strrev_variation3.phpt differ diff --git a/ext/standard/tests/strings/strspn_variation5.phpt b/ext/standard/tests/strings/strspn_variation5.phpt index 229fc1fbb6..25dd888bbf 100644 Binary files a/ext/standard/tests/strings/strspn_variation5.phpt and b/ext/standard/tests/strings/strspn_variation5.phpt differ diff --git a/ext/standard/tests/strings/strspn_variation9.phpt b/ext/standard/tests/strings/strspn_variation9.phpt index 49d590bee8..50387865ae 100644 Binary files a/ext/standard/tests/strings/strspn_variation9.phpt and b/ext/standard/tests/strings/strspn_variation9.phpt differ diff --git a/ext/standard/tests/strings/strstr.phpt b/ext/standard/tests/strings/strstr.phpt index 52088fb88b..f5a2d80318 100644 Binary files a/ext/standard/tests/strings/strstr.phpt and b/ext/standard/tests/strings/strstr.phpt differ diff --git a/ext/standard/tests/strings/strtolower-win32.phpt b/ext/standard/tests/strings/strtolower-win32.phpt index 368a81ad93..516248346c 100644 Binary files a/ext/standard/tests/strings/strtolower-win32.phpt and b/ext/standard/tests/strings/strtolower-win32.phpt differ diff --git a/ext/standard/tests/strings/strtolower.phpt b/ext/standard/tests/strings/strtolower.phpt index 3a68588057..efea4022d0 100644 Binary files a/ext/standard/tests/strings/strtolower.phpt and b/ext/standard/tests/strings/strtolower.phpt differ diff --git a/ext/standard/tests/strings/strtoupper1-win32.phpt b/ext/standard/tests/strings/strtoupper1-win32.phpt index 98a314a7b4..c9328462cf 100644 Binary files a/ext/standard/tests/strings/strtoupper1-win32.phpt and b/ext/standard/tests/strings/strtoupper1-win32.phpt differ diff --git a/ext/standard/tests/strings/strtoupper1.phpt b/ext/standard/tests/strings/strtoupper1.phpt index 864053d22d..f0254905dc 100644 Binary files a/ext/standard/tests/strings/strtoupper1.phpt and b/ext/standard/tests/strings/strtoupper1.phpt differ diff --git a/ext/standard/tests/strings/substr.phpt b/ext/standard/tests/strings/substr.phpt index 8f172cee61..c870e1de0f 100644 Binary files a/ext/standard/tests/strings/substr.phpt and b/ext/standard/tests/strings/substr.phpt differ diff --git a/ext/standard/tests/strings/trim1.phpt b/ext/standard/tests/strings/trim1.phpt index 849b972c11..e0cdbea1c8 100644 Binary files a/ext/standard/tests/strings/trim1.phpt and b/ext/standard/tests/strings/trim1.phpt differ diff --git a/ext/standard/tests/strings/ucfirst.phpt b/ext/standard/tests/strings/ucfirst.phpt index 1d8ecd7630..1cae286d98 100644 Binary files a/ext/standard/tests/strings/ucfirst.phpt and b/ext/standard/tests/strings/ucfirst.phpt differ diff --git a/ext/standard/tests/strings/vprintf_variation10.phpt b/ext/standard/tests/strings/vprintf_variation10.phpt index 56a964a89f..26282b73cf 100644 Binary files a/ext/standard/tests/strings/vprintf_variation10.phpt and b/ext/standard/tests/strings/vprintf_variation10.phpt differ diff --git a/ext/standard/tests/strings/vprintf_variation7.phpt b/ext/standard/tests/strings/vprintf_variation7.phpt index 5cda7611a5..a4dbe73c06 100644 Binary files a/ext/standard/tests/strings/vprintf_variation7.phpt and b/ext/standard/tests/strings/vprintf_variation7.phpt differ diff --git a/ext/standard/tests/strings/vprintf_variation9.phpt b/ext/standard/tests/strings/vprintf_variation9.phpt index 7a1da7e69d..70b28c2176 100644 Binary files a/ext/standard/tests/strings/vprintf_variation9.phpt and b/ext/standard/tests/strings/vprintf_variation9.phpt differ diff --git a/run-tests.php b/run-tests.php index 64d0980e68..9450a47151 100755 --- a/run-tests.php +++ b/run-tests.php @@ -2627,6 +2627,7 @@ COMMAND $cmd $wanted_re = str_replace('%x', '[0-9a-fA-F]+', $wanted_re); $wanted_re = str_replace('%f', '[+-]?\.?\d+\.?\d*(?:[Ee][+-]?\d+)?', $wanted_re); $wanted_re = str_replace('%c', '.', $wanted_re); + $wanted_re = str_replace('%0', '\x00', $wanted_re); // %f allows two points "-.0.0" but that is the best *simple* expression } diff --git a/scripts/dev/bless_tests.php b/scripts/dev/bless_tests.php index 674bbeda8e..fa49647fcf 100755 --- a/scripts/dev/bless_tests.php +++ b/scripts/dev/bless_tests.php @@ -72,6 +72,7 @@ function normalizeOutput(string $out): string { 'Resource ID#%d used as offset, casting to integer (%d)', $out); $out = preg_replace('/string\(\d+\) "([^"]*%d)/', 'string(%d) "$1', $out); + $out = str_replace("\0", '%0', $out); return $out; } @@ -86,6 +87,7 @@ function formatToRegex(string $format): string { $result = str_replace('%x', '[0-9a-fA-F]+', $result); $result = str_replace('%f', '[+-]?\.?\d+\.?\d*(?:[Ee][+-]?\d+)?', $result); $result = str_replace('%c', '.', $result); + $result = str_replace('%0', '\0', $result); return "/^$result$/s"; } @@ -113,7 +115,7 @@ function generateMinimallyDifferingOutput(string $out, string $oldExpect) { function insertOutput(string $phpt, string $out): string { return preg_replace_callback('/--EXPECTF?--.*?(--CLEAN--|$)/sD', function($matches) use($out) { - $hasWildcard = preg_match('/%[resSaAwidxfc]/', $out); + $hasWildcard = preg_match('/%[resSaAwidxfc0]/', $out); $F = $hasWildcard ? 'F' : ''; return "--EXPECT$F--\n" . $out . "\n" . $matches[1]; }, $phpt);