cvs: php-src(PHP_5_2) /ext/mbstring/tests bug43840.phpt bug43994.phpt bug43998.phpt mb_convert_encoding_variation1.phpt
mb_decode_mimeheader_basic.phpt mb_decode_mimeheader_error.phpt mb_decode_mimeheader_variation1.phpt mb_decode_mimeheader_variation2.phpt
mb_decode_mimeheader_variation3.phpt mb_encode_mimeheader_basic.phpt mb_encode_mimeheader_basic2.phpt mb_encode_mimeheader_basic3.phpt
mb_encode_mimeheader_indent.phpt mb_encode_mimeheader_variation1.phpt mb_ereg.phpt mb_ereg_basic.phpt mb_ereg_error.phpt mb_ereg_match_basic.phpt
mb_ereg_match_error1.phpt mb_ereg_replace_basic.phpt mb_ereg_replace_error.phpt mb_ereg_replace_variation1.phpt mb_ereg_replace_variation2.phpt
mb_ereg_replace_variation3.phpt mb_ereg_replace_variation4.phpt mb_ereg_variation3.phpt mb_ereg_variation4.phpt mb_ereg_variation5.phpt
mb_ereg_variation6.phpt mb_ereg_variation7.phpt mb_internal_encoding_ini_basic2.phpt mb_regex_encoding_variation2.phpt mb_split.phpt
mb_split_error.phpt mb_split! _variation1.phpt mb_split_variation2.phpt mb_split_variation3.phpt mb_stripos.phpt mb_stripos_basic.phpt
mb_stripos_basic2.phpt mb_stripos_error1.phpt mb_stripos_error2.phpt mb_stripos_variation1.phpt mb_stripos_variation2.phpt mb_stripos_variation3.phpt
mb_stripos_variation4.phpt mb_stristr_basic.phpt mb_stristr_error1.phpt mb_stristr_error2.phpt mb_stristr_variation1.phpt mb_stristr_variation2.phpt
mb_stristr_variation3.phpt mb_stristr_variation4.phpt mb_stristr_variation5.phpt mb_strlen_basic.phpt mb_strlen_variation1.phpt mb_strpos.phpt
mb_strpos_basic.phpt mb_strpos_variation2.phpt mb_strpos_variation3.phpt mb_strpos_variation4.phpt mb_strpos_variation5.phpt mb_strrchr_basic.phpt
mb_strrchr_error1.phpt mb_strrchr_error2.phpt mb_strrchr_variation1.phpt mb_strrchr_variation2.phpt mb_strrchr_variation3.phpt
mb_strrchr_variation4.phpt mb_strrchr_variation5.phpt mb_strrchr_variation6.phpt mb_strrichr_basic.phpt mb_strrichr_error1.phpt
mb_strrichr_error2.phpt mb_strrichr_var! iation1.phpt mb_strrichr_variation2.phpt mb_strrichr_variation3.phpt mb_strrichr_variation4.phpt
mb_strrichr_variation5.phpt mb_strripos_basic.phpt mb_strripos_basic2.phpt mb_strripos_error1.phpt mb_strripos_error2.phpt mb_strripos_variation1.phpt
mb_strripos_variation2.phpt mb_strripos_variation4.phpt mb_strrpos_basic.phpt
| From: | Ant Phillips | Date: | Wed, 03 Dec 2008 13:03:57 +0000 |
| Subject: | cvs: php-src(PHP_5_2) /ext/mbstring/tests bug43840.phpt bug43994.phpt bug43998.phpt mb_convert_encoding_variation1.phpt mb_decode_mimeheader_basic.phpt mb_decode_mimeheader_error.phpt mb_decode_mimeheader_variation1.phpt mb_decode_mimeheader_variation2.phpt mb_decode_mimeheader_variation3.phpt mb_encode_mimeheader_basic.phpt mb_encode_mimeheader_basic2.phpt mb_encode_mimeheader_basic3.phpt mb_encode_mimeheader_indent.phpt mb_encode_mimeheader_variation1.phpt mb_ereg.phpt mb_ereg_basic.phpt mb_ereg_error.phpt mb_ereg_match_basic.phpt mb_ereg_match_error1.phpt mb_ereg_replace_basic.phpt mb_ereg_replace_error.phpt mb_ereg_replace_variation1.phpt mb_ereg_replace_variation2.phpt mb_ereg_replace_variation3.phpt mb_ereg_replace_variation4.phpt mb_ereg_variation3.phpt mb_ereg_variation4.phpt mb_ereg_variation5.phpt mb_ereg_variation6.phpt mb_ereg_variation7.phpt mb_internal_encoding_ini_basic2.phpt mb_regex_encoding_variation2.phpt mb_split.phpt mb_split_error.phpt mb_split! _variation1.phpt mb_split_variation2.phpt mb_split_variation3.phpt mb_stripos.phpt mb_stripos_basic.phpt mb_stripos_basic2.phpt mb_stripos_error1.phpt mb_stripos_error2.phpt mb_stripos_variation1.phpt mb_stripos_variation2.phpt mb_stripos_variation3.phpt mb_stripos_variation4.phpt mb_stristr_basic.phpt mb_stristr_error1.phpt mb_stristr_error2.phpt mb_stristr_variation1.phpt mb_stristr_variation2.phpt mb_stristr_variation3.phpt mb_stristr_variation4.phpt mb_stristr_variation5.phpt mb_strlen_basic.phpt mb_strlen_variation1.phpt mb_strpos.phpt mb_strpos_basic.phpt mb_strpos_variation2.phpt mb_strpos_variation3.phpt mb_strpos_variation4.phpt mb_strpos_variation5.phpt mb_strrchr_basic.phpt mb_strrchr_error1.phpt mb_strrchr_error2.phpt mb_strrchr_variation1.phpt mb_strrchr_variation2.phpt mb_strrchr_variation3.phpt mb_strrchr_variation4.phpt mb_strrchr_variation5.phpt mb_strrchr_variation6.phpt mb_strrichr_basic.phpt mb_strrichr_error1.phpt mb_strrichr_error2.phpt mb_strrichr_var! iation1.phpt mb_strrichr_variation2.phpt mb_strrichr_variation3.phpt mb_strrichr_variation4.phpt mb_strrichr_variation5.phpt mb_strripos_basic.phpt mb_strripos_basic2.phpt mb_strripos_error1.phpt mb_strripos_error2.phpt mb_strripos_variation1.phpt mb_strripos_variation2.phpt mb_strripos_variation4.phpt mb_strrpos_basic.phpt |
||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-54658@lists.php.net to get a copy of this message | ||
ant Wed Dec 3 13:03:57 2008 UTC
Added files: (Branch: PHP_5_2)
/php-src/ext/mbstring/tests mb_split_variation2.phpt
mb_decode_mimeheader_error.phpt
mb_convert_encoding_variation1.phpt
mb_strstr_variation1.phpt
mb_stripos_variation4.phpt
mb_stripos_basic.phpt
mb_strrchr_variation4.phpt
mb_ereg_replace_error.phpt
mb_encode_mimeheader_indent.phpt
mb_strrichr_variation5.phpt
bug43840.phpt
mb_stristr_variation4.phpt
mb_strripos_variation4.phpt
mb_decode_mimeheader_basic.phpt
mb_split_error.phpt
mb_substr_count_variation4.phpt
mb_strripos_error1.phpt
mb_strrchr_variation5.phpt
mb_substr_variation7.phpt
mb_stristr_error2.phpt
mb_stripos_variation2.phpt
mb_strstr_variation2.phpt
mb_substitute_character_variation2.phpt
mb_strrichr_variation4.phpt
mb_strrichr_error1.phpt bug43994.phpt
mb_strrichr_variation2.phpt
mb_strrchr_variation3.phpt
mb_substitute_character_basic.phpt
mb_stripos_error2.phpt
mb_ereg_replace_variation3.phpt
mb_strrchr_variation2.phpt
mb_strrichr_basic.phpt
mb_strripos_variation1.phpt
mb_ereg_match_error1.phpt
mb_strstr_variation5.phpt
mb_regex_encoding_variation2.phpt
mb_strstr_variation6.phpt
mb_strrichr_variation3.phpt
mb_stripos_error1.phpt
mb_ereg_replace_basic.phpt
mb_substr_variation6.phpt
mb_strrchr_error1.phpt
mb_strstr_basic.phpt
mb_encode_mimeheader_basic2.phpt
mb_stristr_variation3.phpt
mb_stripos_variation1.phpt
mb_split_variation1.phpt
mb_substitute_character_error.phpt
mb_stristr_variation5.phpt
mb_strstr_variation4.phpt
mb_stripos_variation3.phpt
mb_strstr_error2.phpt
mb_stristr_variation1.phpt
mb_ereg_replace_variation4.phpt
mb_ereg_replace_variation2.phpt
mb_strripos_variation2.phpt
mb_strrchr_error2.phpt
mb_decode_mimeheader_variation3.phpt
mb_encode_mimeheader_basic3.phpt
mb_strstr_error1.phpt
mb_strrchr_basic.phpt
mb_split_variation3.phpt
mb_internal_encoding_ini_basic2.phpt
mb_strpos_variation5.phpt
mb_stripos_basic2.phpt
mb_strrchr_variation6.phpt
mb_ereg_replace_variation1.phpt
mb_ereg_match_basic.phpt
mb_strripos_basic.phpt
mb_strstr_variation3.phpt
mb_strripos_error2.phpt
mb_strrichr_variation1.phpt
mb_strripos_basic2.phpt
mb_stristr_basic.phpt mb_stripos.phpt
mb_decode_mimeheader_variation1.phpt
mb_strrichr_error2.phpt
mb_stristr_error1.phpt
mb_decode_mimeheader_variation2.phpt
mb_strrchr_variation1.phpt
bug43998.phpt
mb_substitute_character_variation1.phpt
mb_stristr_variation2.phpt
Modified files:
/php-src/ext/mbstring/tests mb_substr_variation2.phpt
mb_strrpos_basic.phpt
mb_strpos_variation3.phpt
mb_strlen_variation1.phpt
mb_ereg_variation4.phpt
mb_strpos_basic.phpt mb_substr.phpt
mb_strtolower_variation4.phpt
mb_encode_mimeheader_basic.phpt
mb_strpos.phpt mb_strlen_basic.phpt
mb_ereg.phpt mb_substr_variation4.phpt
mb_strtolower_variation1.phpt
mb_strpos_variation2.phpt
mb_ereg_variation7.phpt
mb_strrpos_variation3.phpt
mb_strrpos_variation4.phpt
mb_strtoupper_variation1.phpt
mb_encode_mimeheader_variation1.phpt
mb_strtolower_variation2.phpt
mb_substr_count_variation2.phpt
mb_ereg_variation5.phpt
mb_substr_variation1.phpt
mb_ereg_error.phpt
mb_substr_variation5.phpt
mb_strrpos_variation1.phpt
mb_split.phpt mb_ereg_basic.phpt
mb_strtoupper_variation2.phpt
mb_substr_count_variation1.phpt
mb_substr_count_variation3.phpt
mb_ereg_variation3.phpt
mb_strpos_variation4.phpt
mb_strtoupper_variation4.phpt
mb_strtoupper_basic.phpt
mb_ereg_variation6.phpt
Log:
MBString tests: checked on PHP 5.2.6 (Windows, Linux and Linux 64 bit).
http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation2.phpt Wed Dec 3 13:03:55 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_substr() : usage variations ***\n"; // Initialise function arguments not being substituted -$str = 'string_val'; +$str = b'string_val'; $start = 1; $length = 5; @@ -96,7 +96,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr($str, $start, $length, $input)); + $res = mb_substr($str, $start, $length, $input); + if ($res === false) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -192,16 +198,16 @@ bool(false) -- Iteration 18 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 19 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 20 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 21 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_basic.phpt Wed Dec 3 13:03:55 2008 @@ -20,15 +20,15 @@ mb_internal_encoding('UTF-8'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); echo "\n-- ASCII string 1 --\n"; -var_dump(mb_strrpos($string_ascii, 'is', 4, 'ISO-8859-1')); +var_dump(mb_strrpos($string_ascii, b'is', 4, 'ISO-8859-1')); echo "\n-- ASCII string 2 --\n"; -var_dump(mb_strrpos($string_ascii, 'hello, world')); +var_dump(mb_strrpos($string_ascii, b'hello, world')); echo "\n-- Multibyte string 1 --\n"; $needle1 = base64_decode('44CC'); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation3.phpt Wed Dec 3 13:03:55 2008 @@ -19,8 +19,8 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'a'; -$haystack = 'string_val'; +$needle = b'a'; +$haystack = b'string_val'; $encoding = 'utf-8'; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strlen_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strlen_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strlen_variation1.phpt Wed Dec 3 13:03:55 2008 @@ -29,12 +29,12 @@ class classA { public function __toString() { - return "Class A object"; + return b"Class A object"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; @@ -72,8 +72,8 @@ '', // string data -/*18*/ "string", - 'string', +/*18*/ b"string", + b'string', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -23,19 +23,19 @@ //contains japanese characters, ASCII digits and different, UTF-8 encoded digits $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -$character_classes = array ('[[:alnum:]]+', /*1*/ - '[[:alpha:]]+', - '[[:ascii:]]+', - '[[:blank:]]+', - '[[:cntrl:]]+',/*5*/ - '[[:digit:]]+', - '[[:graph:]]+', - '[[:lower:]]+', - '[[:print:]]+', - '[[:punct:]]+', /*10*/ - '[[:space:]]+', - '[[:upper:]]+', - '[[:xdigit:]]+'); /*13*/ +$character_classes = array (b'[[:alnum:]]+', /*1*/ + b'[[:alpha:]]+', + b'[[:ascii:]]+', + b'[[:blank:]]+', + b'[[:cntrl:]]+',/*5*/ + b'[[:digit:]]+', + b'[[:graph:]]+', + b'[[:lower:]]+', + b'[[:print:]]+', + b'[[:punct:]]+', /*10*/ + b'[[:space:]]+', + b'[[:upper:]]+', + b'[[:xdigit:]]+'); /*13*/ $iterator = 1; foreach ($character_classes as $pattern) { http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_basic.phpt Wed Dec 3 13:03:55 2008 @@ -20,12 +20,12 @@ mb_internal_encoding('UTF-8'); -$string_ascii = 'abc def'; +$string_ascii = b'abc def'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); echo "\n-- ASCII string 1 --\n"; -var_dump(mb_strpos($string_ascii, 'd', 2, 'ISO-8859-1')); +var_dump(mb_strpos($string_ascii, b'd', 2, 'ISO-8859-1')); echo "\n-- ASCII string 2 --\n"; var_dump(mb_strpos($string_ascii, '123')); @@ -40,7 +40,7 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_strpos() : basic functionality*** -- ASCII string 1 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr.phpt?r1=1.3.20.1&r2=1.3.20.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr.phpt diff -u php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.1 php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.2 --- php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.1 Sat Jul 29 17:11:09 2006 +++ php-src/ext/mbstring/tests/mb_substr.phpt Wed Dec 3 13:03:55 2008 @@ -12,24 +12,24 @@ include_once('common.inc'); // EUC-JP -$euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; +$euc_jp = b'0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; -print "1: ". mb_substr($euc_jp, 10, 10,'EUC-JP') . "\n"; -print "2: ". mb_substr($euc_jp, 0, 100,'EUC-JP') . "\n"; +print "1: ". bin2hex(mb_substr($euc_jp, 10, 10,'EUC-JP')) . "\n"; +print "2: ". bin2hex(mb_substr($euc_jp, 0, 100,'EUC-JP')) . "\n"; $str = mb_substr($euc_jp, 100, 10,'EUC-JP'); // Note: returns last character -($str === "") ? print "3 OK\n" : print "NG: $str\n"; +($str === "") ? print "3 OK\n" : print "NG: ".bin2hex($str)."\n"; $str = mb_substr($euc_jp, -100, 10,'EUC-JP'); -($str !== "") ? print "4 OK: $str\n" : print "NG: $str\n"; +($str !== "") ? print "4 OK: ".bin2hex($str)."\n" : print "NG: ".bin2hex($str)."\n"; ?> --EXPECT-- -1: ÆüËܸì¤Ç¤¹¡£EUC- -2: 0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£ +1: c6fccbdcb8eca4c7a4b9a1a34555432d +2: 30313233a4b3a4cecab8bbfacef3a4cfc6fccbdcb8eca4c7a4b9a1a34555432d4a50a4f2bbc8a4c3a4c6a4a4a4dea4b9a1a3c6fccbdcb8eca4cfccccc5ddbdada4a4a1a3 3 OK -4 OK: 0123¤³¤Îʸ»úÎó¤Ï +4 OK: 30313233a4b3a4cecab8bbfacef3a4cf http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -18,10 +18,10 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; -$uppers = array('Basic Latin' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', +$uppers = array('Basic Latin' => b'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'Characters With Accents' => base64_decode('w4DDgcOCw4PDhMOFw4bDh8OIw4nDisOLw4zDjcOOw4/DkMORw5LDk8OUw5XDlg=='), 'Russian' => base64_decode('0JDQkdCS0JPQlNCV0JbQlw==')); -$lowers = array('Basic Latin' => 'abcdefghijklmnopqrstuvwxyz', +$lowers = array('Basic Latin' => b'abcdefghijklmnopqrstuvwxyz', 'Characters With Accents' => base64_decode('w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=='), 'Russian' => base64_decode('0LDQsdCy0LPQtNC10LbQtw==')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt diff -u php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt Wed Dec 3 13:03:55 2008 @@ -21,13 +21,22 @@ */ echo "*** Testing mb_encode_mimeheader() : basic ***\n"; -mb_internal_encoding('utf-8'); -$inputs = array('English' => 'This is an English string. 0123456789', - 'Japanese' => base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CC'), +$english = array('English' => 'This is an English string. 0123456789'); +$nonEnglish = array('Japanese' => base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CC'), 'Greek' => base64_decode('zpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrvOt869zrnOus+MIM66zrXOr868zrXOvc6/LiAwMTIzNDU2Nzg5Lg==')); -foreach ($inputs as $lang => $input) { +foreach ($english as $lang => $input) { + echo "\nLanguage: $lang\n"; + echo "-- Base 64: --\n"; + var_dump(mb_encode_mimeheader($input, 'UTF-8', 'B')); + echo "-- Quoted-Printable --\n"; + var_dump(mb_encode_mimeheader($input, 'UTF-8', 'Q')); +} + +mb_internal_encoding('utf-8'); + +foreach ($nonEnglish as $lang => $input) { echo "\nLanguage: $lang\n"; echo "-- Base 64: --\n"; var_dump(mb_encode_mimeheader($input, 'UTF-8', 'B')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos.phpt?r1=1.4&r2=1.4.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos.phpt diff -u php-src/ext/mbstring/tests/mb_strpos.phpt:1.4 php-src/ext/mbstring/tests/mb_strpos.phpt:1.4.6.1 --- php-src/ext/mbstring/tests/mb_strpos.phpt:1.4 Mon Feb 3 20:29:07 2003 +++ php-src/ext/mbstring/tests/mb_strpos.phpt Wed Dec 3 13:03:55 2008 @@ -12,18 +12,18 @@ // Test string -$euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; +$euc_jp = b'0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; // EUC-JP - With encoding parameter mb_internal_encoding('UTF-8') or print("mb_internal_encoding() failed\n"); echo "== POSITIVE OFFSET ==\n"; -print mb_strpos($euc_jp,'ÆüËܸì', 0, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp, '0', 0, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 0, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'0', 0, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 3, 0, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 0, 0, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp,'ÆüËܸì', 15, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp, '0', 15, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 15, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'0', 15, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 3, 15, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 0, 15, 'EUC-JP') . "\n"; @@ -31,17 +31,17 @@ // Note: PHP Warning - offset is negative. // Note: For offset(-15). It does not return position of latter string. (ie the same result as -50) echo "== NEGATIVE OFFSET ==\n"; -$r = mb_strpos($euc_jp,'ÆüËܸì', -15, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp, '0', -15, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 3, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 0, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp,'ÆüËܸì', -50, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp, '0', -50, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 3, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; @@ -50,9 +50,9 @@ // Out of range - should return false print ("== OUT OF RANGE ==\n"); -$r = mb_strpos($euc_jp,'ÆüËܸì', 40, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; -$r = mb_strpos($euc_jp, '0', 40, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_strpos($euc_jp, 3, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; @@ -64,9 +64,9 @@ // Non-existent echo "== NON-EXISTENT ==\n"; -$r = mb_strpos($euc_jp, '´Ú¹ñ¸ì', 0, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì', 0, 'EUC-JP'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp, "\n", 0, 'EUC-JP'); +$r = mb_strpos($euc_jp, b"\n", 0, 'EUC-JP'); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; @@ -74,28 +74,28 @@ echo "== NO ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); -print mb_strpos($euc_jp,'ÆüËܸì', 0) . "\n"; -print mb_strpos($euc_jp, '0', 0) . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 0) . "\n"; +print mb_strpos($euc_jp, b'0', 0) . "\n"; print mb_strpos($euc_jp, 3, 0) . "\n"; print mb_strpos($euc_jp, 0, 0) . "\n"; -$r = mb_strpos($euc_jp,'´Ú¹ñ¸ì', 0); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì', 0); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp,"\n", 0); +$r = mb_strpos($euc_jp, b"\n", 0); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No offset and encoding parameter echo "== NO OFFSET AND ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); -print mb_strpos($euc_jp,'ÆüËܸì') . "\n"; -print mb_strpos($euc_jp, '0') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì') . "\n"; +print mb_strpos($euc_jp, b'0') . "\n"; print mb_strpos($euc_jp, 3) . "\n"; print mb_strpos($euc_jp, 0) . "\n"; -$r = mb_strpos($euc_jp,'´Ú¹ñ¸ì'); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp,"\n"); +$r = mb_strpos($euc_jp, b"\n"); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strlen_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strlen_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strlen_basic.phpt Wed Dec 3 13:03:55 2008 @@ -18,7 +18,7 @@ echo "*** Testing mb_strlen() : basic functionality***\n"; -$string_ascii = 'abc def'; +$string_ascii = b'abc def'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg.phpt?r1=1.5&r2=1.5.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg.phpt diff -u php-src/ext/mbstring/tests/mb_ereg.phpt:1.5 php-src/ext/mbstring/tests/mb_ereg.phpt:1.5.6.1 --- php-src/ext/mbstring/tests/mb_ereg.phpt:1.5 Fri Nov 15 15:34:57 2002 +++ php-src/ext/mbstring/tests/mb_ereg.phpt Wed Dec 3 13:03:55 2008 @@ -17,14 +17,13 @@ mb_regex_encoding( $test_enc ); $pat = mb_convert_encoding( $pat, $test_enc, $in_enc ); $str = mb_convert_encoding( $str, $test_enc, $in_enc ); - - printf( "(%d)%s\n", mb_ereg( $pat, $str, $reg ), ( is_array( $reg )? mb_convert_encoding( implode( ' ', $reg ), $in_enc, $test_enc ) : '' ) ); + printf( "(%d)%s\n", mb_ereg( $pat, $str, $reg ), ( is_array( $reg )? bin2hex(mb_convert_encoding( implode( b' ', $reg ), $in_enc, $test_enc )) : '' ) ); } function do_tests( $enc ) { - test_ereg( $enc, 'abc ([a-z]+) ([a-z]+) ([a-z]+)$', "abc def ghi jkl" ); - $pat = '([£á-£ú]+) ([ ¤¢-¤«]+)([¤«-¤Ê]+) ([¤ï-¤ó]+)$'; - test_ereg( $enc, $pat, '£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó' ); - test_ereg( $enc, $pat, '£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð' ); + test_ereg( $enc, b'abc ([a-z]+) ([a-z]+) ([a-z]+)$', b"abc def ghi jkl" ); + $pat = b'([£á-£ú]+) ([ ¤¢-¤«]+)([¤«-¤Ê]+) ([¤ï-¤ó]+)$'; + test_ereg( $enc, $pat, b'£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó' ); + test_ereg( $enc, $pat, b'£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð' ); } foreach( $encs as $enc ) { @@ -33,15 +32,15 @@ ?> --EXPECT-- -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(39)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(39)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(39)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(39)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -20,7 +20,7 @@ mb_internal_encoding('UTF-8'); -$string_ascii = '+Is an English string'; //21 chars +$string_ascii = b'+Is an English string'; //21 chars $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); //21 chars @@ -35,7 +35,8 @@ } echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; - var_dump($a = mb_substr($string_ascii, $i, 4)); + $a = mb_substr($string_ascii, $i, 4); + var_dump(base64_encode($a)); echo "--Multibyte String --\n"; $b = mb_substr($string_mb, $i, 4, 'UTF-8'); if (strlen($a) == mb_strlen($b, 'UTF-8')) { // should return same length @@ -48,60 +49,60 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_substr() : usage variations *** **-- Offset is: -60 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -50 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -40 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -30 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -20 --** -- ASCII String -- -string(4) "Is a" +string(8) "SXMgYQ==" --Multibyte String -- string(16) "5pys6Kqe44OG44Kt" **-- Offset is: -10 --** -- ASCII String -- -string(4) "ish " +string(8) "aXNoIA==" --Multibyte String -- string(8) "MTIzNA==" **-- Offset is: 0 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: 10 --** -- ASCII String -- -string(4) "lish" +string(8) "bGlzaA==" --Multibyte String -- string(8) "MDEyMw==" **-- Offset is: 20 --** -- ASCII String -- -string(1) "g" +string(4) "Zw==" --Multibyte String -- string(4) "44CC" http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt Wed Dec 3 13:03:55 2008 @@ -18,8 +18,6 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; -// Initialise function arguments not being substituted -$encoding = 'UTF-8'; //get an unset variable $unset_var = 10; @@ -93,7 +91,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtolower($input, $encoding) ); + var_dump( mb_strtolower($input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation2.phpt Wed Dec 3 13:03:55 2008 @@ -19,7 +19,7 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'string_val'; +$haystack = b'string_val'; $offset = 0; $encoding = 'utf-8'; @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "Class A object"; + return b"Class A object"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; @@ -74,8 +74,8 @@ '', // string data -/*18*/ "string", - 'string', +/*18*/ b"string", + b'string', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation7.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation7.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation7.phpt Wed Dec 3 13:03:55 2008 @@ -27,10 +27,10 @@ echo "Could not set regex encoding to utf-8\n"; } -$string_ascii = 'This is an English string. 0123456789.'; -$regex_ascii = '([A-Z]\w{1,4}is( [aeiou]|h)) ?.*\.\s[0-9]+(5([6-9][79]){2})[[:punct:]]$'; +$string_ascii = b'This is an English string. 0123456789.'; +$regex_ascii = b'([A-Z]\w{1,4}is( [aeiou]|h)) ?.*\.\s[0-9]+(5([6-9][79]){2})[[:punct:]]$'; var_dump(mb_ereg($regex_ascii, $string_ascii, $regs_ascii)); -var_dump($regs_ascii); +base64_encode_var_dump($regs_ascii); $string_mb = base64_decode('zpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrvOt869zrnOus+MIM66zrXOr868zrXOvc6/LiAwMTIzNDU2Nzg5Lg=='); $regex_mb = base64_decode("W86RLc6pXShcdysgKSvOtVvOsS3PiVxzXSvOui4qKM+MfM6/KS4qXC5cc1swLTldKyg1KFs2LTldWzc5XSl7Mn0pW1s6cHVuY3Q6XV0k"); @@ -62,21 +62,21 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : usage variations *** Regex encoding set to utf-8 int(38) array(5) { [0]=> - string(38) "This is an English string. 0123456789." + string(52) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4OS4=" [1]=> - string(6) "This i" + string(8) "VGhpcyBp" [2]=> - string(2) " i" + string(4) "IGk=" [3]=> - string(5) "56789" + string(8) "NTY3ODk=" [4]=> - string(2) "89" + string(4) "ODk=" } int(64) array(5) { http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -19,8 +19,8 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'a'; -$haystack = 'string_val'; +$needle = b'a'; +$haystack = b'string_val'; $encoding = 'utf-8'; //get an unset variable @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "7"; + return b"7"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'hello, world'; -$needle = 'world'; +$haystack = b'hello, world'; +$needle = b'world'; $offset = 0; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,6 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; // Initialise function arguments not being substituted -$encoding = 'UTF-8'; //get an unset variable $unset_var = 10; @@ -94,7 +93,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtoupper($input, $encoding) ); + var_dump( mb_strtoupper($input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -19,8 +19,6 @@ echo "*** Testing mb_encode_mimeheader() : usage variations ***\n"; -mb_internal_encoding('utf-8'); - // Initialise function arguments not being substituted $charset = 'utf-8'; $transfer_encoding = 'B'; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; // Initialise function arguments not being substituted -$sourcestring = 'Hello, World'; +$sourcestring = b'Hello, World'; //get an unset variable $unset_var = 10; @@ -94,7 +94,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtolower($sourcestring, $input) ); + $res = mb_strtolower($sourcestring, $input); + if ($res === false || $res == NULL) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -191,16 +197,16 @@ bool(false) -- Iteration 18 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 19 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 20 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 21 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,6 @@ // Initialise function arguments not being substituted (if any) $haystack = 'hello, world'; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -94,7 +93,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr_count($haystack, $input, $encoding) ); + var_dump( mb_substr_count($haystack, $input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation5.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation5.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation5.phpt Wed Dec 3 13:03:56 2008 @@ -20,16 +20,16 @@ mb_regex_encoding('utf-8'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -$regex = '^.*?[[:blank:]]?[[:punct:][:digit:]]+\.?$'; +$regex = b'^.*?[[:blank:]]?[[:punct:][:digit:]]+\.?$'; echo "\nASCII String without \$regs arg:\t\t"; var_dump(mb_ereg($regex, $string_ascii)); echo "ASCII String with \$regs arg:\n"; var_dump(mb_ereg($regex, $string_ascii, $regs_ascii)); -var_dump($regs_ascii); +base64_encode_var_dump($regs_ascii); echo "\nMultibyte String without \$regs arg:\t"; var_dump(mb_ereg($regex, $string_mb)); @@ -69,7 +69,7 @@ int(38) array(1) { [0]=> - string(38) "This is an English string. 0123456789." + string(52) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4OS4=" } Multibyte String without $regs arg: int(1) http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -21,7 +21,6 @@ // Initialise function arguments not being substituted $start = 0; $length = 5; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -95,7 +94,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr($input, $start, $length, $encoding)); + var_dump( mb_substr($input, $start, $length)); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_error.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_error.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_error.phpt Wed Dec 3 13:03:56 2008 @@ -21,15 +21,15 @@ //Test mb_ereg with one more than the expected number of arguments echo "\n-- Testing mb_ereg() function with more than expected no. of arguments --\n"; -$pattern = 'string_val'; -$string = 'string_val'; +$pattern = b'string_val'; +$string = b'string_val'; $registers = array(1, 2); $extra_arg = 10; var_dump( mb_ereg($pattern, $string, $registers, $extra_arg) ); // Testing mb_ereg with one less than the expected number of arguments echo "\n-- Testing mb_ereg() function with less than expected no. of arguments --\n"; -$pattern = 'string_val'; +$pattern = b'string_val'; var_dump( mb_ereg($pattern) ); echo "Done"; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation5.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation5.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation5.phpt Wed Dec 3 13:03:56 2008 @@ -6,7 +6,6 @@ function_exists('mb_substr') or die("skip mb_substr() is not available in this build"); ?> --FILE-- - <?php /* Prototype : string mb_substr(string $str, int $start [, int $length [, string $encoding]]) * Description: Returns part of a string @@ -21,7 +20,7 @@ mb_internal_encoding('UTF-8'); -$string_ascii = '+Is an English string'; //21 chars +$string_ascii = b'+Is an English string'; //21 chars //Japanese string, 21 characters $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); @@ -37,7 +36,8 @@ } echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; - var_dump($a = mb_substr($string_ascii, 1, $i)); + $a = mb_substr($string_ascii, 1, $i); + var_dump(base64_encode($a)); echo "--Multibyte String --\n"; $b = mb_substr($string_mb, 1, $i, 'UTF-8'); if (strlen($a) == mb_strlen($b, 'UTF-8')) { // should return same length @@ -50,8 +50,7 @@ echo "Done"; ?> - ---EXPECTF-- +--EXPECT-- *** Testing mb_substr() : usage variations *** **-- Offset is: -60 --** @@ -86,7 +85,7 @@ **-- Offset is: -10 --** -- ASCII String -- -string(10) "Is an Engl" +string(16) "SXMgYW4gRW5nbA==" --Multibyte String -- string(40) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMA==" @@ -98,37 +97,37 @@ **-- Offset is: 10 --** -- ASCII String -- -string(10) "Is an Engl" +string(16) "SXMgYW4gRW5nbA==" --Multibyte String -- string(40) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMA==" **-- Offset is: 20 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 30 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 40 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 50 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 60 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" Done \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -19,7 +19,7 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'world'; +$needle = b'world'; $offset = 0; $encoding = 'utf-8'; @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "hello, world"; + return b"hello, world"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello, world EOT; @@ -74,8 +74,8 @@ '', // string data -/*18*/ "hello, world", - 'hello, world', +/*18*/ b"hello, world", + b'hello, world', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split.phpt?r1=1.4&r2=1.4.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_split.phpt diff -u php-src/ext/mbstring/tests/mb_split.phpt:1.4 php-src/ext/mbstring/tests/mb_split.phpt:1.4.6.1 --- php-src/ext/mbstring/tests/mb_split.phpt:1.4 Fri Nov 29 18:32:50 2002 +++ php-src/ext/mbstring/tests/mb_split.phpt Wed Dec 3 13:03:56 2008 @@ -23,15 +23,15 @@ } } - var_dump( mb_split( " ", "a b c d e f g" ) - == mb_split( "[[:space:]]", "a\nb\tc\nd e f g" ) ); + var_dump( mb_split( b" ", b"a b c d e f g" ) + == mb_split( b"[[:space:]]", b"a\nb\tc\nd e f g" ) ); for ( $i = 0; $i < 5; ++$i ) { - verify_split( " ", "a\tb\tc\td e\tf g", $i ); + verify_split( b" ", b"a\tb\tc\td e\tf g", $i ); } for ( $i = 1; $i < 5; ++$i ) { - verify_split( "\xa1\xa1+", "\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1", $i ); + verify_split( b"\xa1\xa1+", b"\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1", $i ); } ?> http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_basic.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_basic.phpt Wed Dec 3 13:03:56 2008 @@ -23,9 +23,9 @@ } else { echo "Could not set regex encoding to utf-8\n"; } -$string_ascii = 'This is an English string. 0123456789.'; -$regex_ascii1 = '(.*is)+.*\.[[:blank:]][0-9]{9}'; -$regex_ascii2 = '.*is+'; +$string_ascii = b'This is an English string. 0123456789.'; +$regex_ascii1 = b'(.*is)+.*\.[[:blank:]][0-9]{9}'; +$regex_ascii2 = b'.*is+'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); $regex_mb1 = base64_decode('KOaXpeacrOiqnikuKj8oWzEtOV0rKQ=='); @@ -37,9 +37,9 @@ var_dump(mb_ereg($regex_ascii2, $string_ascii)); echo "--With \$regs argument --\n"; var_dump(mb_ereg($regex_ascii1, $string_ascii, $regs_ascii1)); -var_dump($regs_ascii1); +base64_encode_var_dump($regs_ascii1); var_dump(mb_ereg($regex_ascii2, $string_ascii, $regs_ascii2)); -var_dump($regs_ascii2); +base64_encode_var_dump($regs_ascii2); echo "\n**-- Multibyte String --**\n"; echo "-- Without \$regs argument --\n"; @@ -76,7 +76,7 @@ } ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : basic functionality *** Regex encoding set to utf-8 @@ -88,14 +88,14 @@ int(36) array(2) { [0]=> - string(36) "This is an English string. 012345678" + string(48) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4" [1]=> - string(17) "This is an Englis" + string(24) "VGhpcyBpcyBhbiBFbmdsaXM=" } int(17) array(1) { [0]=> - string(17) "This is an Englis" + string(24) "VGhpcyBpcyBhbiBFbmdsaXM=" } **-- Multibyte String --** http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; // Initialise function arguments not being substituted -$sourcestring = 'Hello, World'; +$sourcestring = b'Hello, World'; //get an unset variable $unset_var = 10; @@ -94,7 +94,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtoupper($sourcestring, $input) ); + $res = mb_strtoupper($sourcestring, $input); + if ($res === false || $res == NULL) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -192,16 +198,16 @@ bool(false) -- Iteration 18 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 19 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 20 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 21 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -21,7 +21,6 @@ // Initialise function arguments not being substituted $needle = 'world'; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -95,7 +94,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr_count($input, $needle, $encoding) ); + var_dump( mb_substr_count($input, $needle) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_substr_count() : usage variations ***\n"; // Initialise function arguments not being substituted (if any) -$haystack = 'hello, world'; -$needle = 'world'; +$haystack = b'hello, world'; +$needle = b'world'; //get an unset variable $unset_var = 10; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -21,18 +21,18 @@ mb_regex_encoding('utf-8'); // have to set otherwise won't match $mb properly $mb = base64_decode('5pel5pys6Kqe'); -$character_classes = array ('aB1' => '[[:alnum:]]+', /*1*/ - 'aBcD' => '[[:alpha:]]+', - 'ab/=' => '[[:ascii:]]+', - " \t" => '[[:blank:]]+', - '234' => '[[:digit:]]+', /*5*/ - "$mb" => '[[:graph:]]+', - 'fjds' => '[[:lower:]]+', - "$mb\t" => '[[:print:]]+', - '.!"*@' => '[[:punct:]]+', - "\t" => '[[:space:]]+', /*10*/ - 'IDSJV' => '[[:upper:]]+', - '3b5D' => '[[:xdigit:]]+'); /*12*/ +$character_classes = array (b'aB1' => b'[[:alnum:]]+', /*1*/ + b'aBcD' => b'[[:alpha:]]+', + b'ab/=' => b'[[:ascii:]]+', + b" \t" => b'[[:blank:]]+', + b'234' => b'[[:digit:]]+', /*5*/ + "$mb" => b'[[:graph:]]+', + b'fjds' => b'[[:lower:]]+', + b"$mb\t" => b'[[:print:]]+', + b'.!"*@' => b'[[:punct:]]+', + b"\t" => b'[[:space:]]+', /*10*/ + b'IDSJV' => b'[[:upper:]]+', + b'3b5D' => b'[[:xdigit:]]+'); /*12*/ $iterator = 1; foreach($character_classes as $string => $pattern) { @@ -42,11 +42,7 @@ // make sure any multibyte output is in base 64 echo "\n-- Iteration $iterator --\n"; var_dump(mb_ereg($pattern, $string, $regs)); - if (strpos($string, $mb) === FALSE) { - var_dump($regs); - } else { - base64_encode_var_dump($regs); - } + base64_encode_var_dump($regs); $iterator++; } /** @@ -74,42 +70,42 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : variation *** -- Iteration 1 -- int(3) array(1) { [0]=> - string(3) "aB1" + string(4) "YUIx" } -- Iteration 2 -- int(4) array(1) { [0]=> - string(4) "aBcD" + string(8) "YUJjRA==" } -- Iteration 3 -- int(4) array(1) { [0]=> - string(4) "ab/=" + string(8) "YWIvPQ==" } -- Iteration 4 -- int(2) array(1) { [0]=> - string(2) " " + string(4) "IAk=" } -- Iteration 5 -- int(3) array(1) { [0]=> - string(3) "234" + string(4) "MjM0" } -- Iteration 6 -- @@ -123,7 +119,7 @@ int(4) array(1) { [0]=> - string(4) "fjds" + string(8) "Zmpkcw==" } -- Iteration 8 -- @@ -137,27 +133,27 @@ int(5) array(1) { [0]=> - string(5) ".!"*@" + string(8) "LiEiKkA=" } -- Iteration 10 -- int(1) array(1) { [0]=> - string(1) " " + string(4) "CQ==" } -- Iteration 11 -- int(5) array(1) { [0]=> - string(5) "IDSJV" + string(8) "SURTSlY=" } -- Iteration 12 -- int(4) array(1) { [0]=> - string(4) "3b5D" + string(8) "M2I1RA==" } Done \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'string_val'; -$needle = 'val'; +$haystack = b'string_val'; +$needle = b'val'; $offset = 0; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -19,10 +19,10 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; -$uppers = array('Basic Latin' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', +$uppers = array('Basic Latin' => b'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'Characters With Accents' => base64_decode('w4DDgcOCw4PDhMOFw4bDh8OIw4nDisOLw4zDjcOOw4/DkMORw5LDk8OUw5XDlg=='), 'Russian' => base64_decode('0JDQkdCS0JPQlNCV0JbQlw==')); -$lowers = array('Basic Latin' => 'abcdefghijklmnopqrstuvwxyz', +$lowers = array('Basic Latin' => b'abcdefghijklmnopqrstuvwxyz', 'Characters With Accents' => base64_decode('w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=='), 'Russian' => base64_decode('0LDQsdCy0LPQtNC10LbQtw==')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt Wed Dec 3 13:03:56 2008 @@ -19,14 +19,14 @@ echo "*** Testing mb_strtoupper() : basic functionality ***\n"; mb_internal_encoding('utf-8'); -$ascii_lower = 'abcdefghijklmnopqrstuvwxyz'; -$ascii_upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; +$ascii_lower = b'abcdefghijklmnopqrstuvwxyz'; +$ascii_upper = b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $greek_lower = base64_decode('zrHOss6zzrTOtc62zrfOuM65zrrOu868zr3Ovs6/z4DPgc+Dz4TPhc+Gz4fPiM+J'); $greek_upper = base64_decode('zpHOks6TzpTOlc6WzpfOmM6ZzprOm86czp3Ons6fzqDOoc6jzqTOpc6mzqfOqM6p'); echo "\n-- ASCII String --\n"; $ascii = mb_strtoupper($ascii_lower); -var_dump($ascii); +var_dump(base64_encode($ascii)); if($ascii == $ascii_upper) { echo "Correctly converted\n"; @@ -47,11 +47,11 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_strtoupper() : basic functionality *** -- ASCII String -- -string(26) "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +string(36) "QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVo=" Correctly converted -- Multibyte String -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation6.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation6.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation6.phpt Wed Dec 3 13:03:56 2008 @@ -24,20 +24,27 @@ echo "Could not set regex encoding to utf-8\n"; } -$regex_char = array ('\w+', '\W+', '\s+', '\S+', '\d+', '\D+', '\b', '\B'); +$regex_char = array ('\w+' => b'\w+', + '\W+' => b'\W+', + '\s+' => b'\s+', + '\S+' => b'\S+', + '\d+' => b'\d+', + '\D+' => b'\D+', + '\b' => b'\b', + '\B' => b'\B'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -foreach ($regex_char as $char) { - echo "\n--** Pattern is: $char **--\n"; +foreach ($regex_char as $displayChar => $char) { + echo "\n--** Pattern is: $displayChar **--\n"; if (@$regs_ascii || @$regs_mb) { $regs_ascii = null; $regs_mb = null; } echo "-- ASCII String: --\n"; var_dump(mb_ereg($char, $string_ascii, $regs_ascii)); - var_dump($regs_ascii); + base64_encode_var_dump($regs_ascii); echo "-- Multibyte String: --\n"; var_dump(mb_ereg($char, $string_mb, $regs_mb)); @@ -70,7 +77,7 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : usage variations *** Regex encoding set to utf-8 @@ -79,7 +86,7 @@ int(4) array(1) { [0]=> - string(4) "This" + string(8) "VGhpcw==" } -- Multibyte String: -- int(27) @@ -93,7 +100,7 @@ int(1) array(1) { [0]=> - string(1) " " + string(4) "IA==" } -- Multibyte String: -- int(3) @@ -107,7 +114,7 @@ int(1) array(1) { [0]=> - string(1) " " + string(4) "IA==" } -- Multibyte String: -- bool(false) @@ -118,7 +125,7 @@ int(4) array(1) { [0]=> - string(4) "This" + string(8) "VGhpcw==" } -- Multibyte String: -- int(53) @@ -132,7 +139,7 @@ int(10) array(1) { [0]=> - string(10) "0123456789" + string(16) "MDEyMzQ1Njc4OQ==" } -- Multibyte String: -- int(20) @@ -146,7 +153,7 @@ int(27) array(1) { [0]=> - string(27) "This is an English string. " + string(36) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4g" } -- Multibyte String: -- int(30) http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation2.phpt +++ php-src/ext/mbstring/tests/mb_split_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt +++ php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation4.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation4.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $encoding arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $encoding arg to test behaviour * Where possible 'UTF-8' has been entered as a string value */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $haystack = 'string_val'; $needle = 'val'; $offset = 0; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "UTF-8"; } } // heredoc string $heredoc = <<<EOT UTF-8 EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $input argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "UTF-8", 'UTF-8', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $needle, $offset, $input)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- Warning: mb_stripos(): Unknown encoding "0" in %s on line %d bool(false) -- Iteration 2 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 3 -- Warning: mb_stripos(): Unknown encoding "12345" in %s on line %d bool(false) -- Iteration 4 -- Warning: mb_stripos(): Unknown encoding "-2345" in %s on line %d bool(false) -- Iteration 5 -- Warning: mb_stripos(): Unknown encoding "10.5" in %s on line %d bool(false) -- Iteration 6 -- Warning: mb_stripos(): Unknown encoding "-10.5" in %s on line %d bool(false) -- Iteration 7 -- Warning: mb_stripos(): Unknown encoding "123456789000" in %s on line %d bool(false) -- Iteration 8 -- Warning: mb_stripos(): Unknown encoding "1.23456789E-9" in %s on line %d bool(false) -- Iteration 9 -- Warning: mb_stripos(): Unknown encoding "0.5" in %s on line %d bool(false) -- Iteration 10 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 11 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 12 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 13 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 14 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 15 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 16 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 18 -- int(7) -- Iteration 19 -- int(7) -- Iteration 20 -- int(7) -- Iteration 21 -- int(7) -- Iteration 22 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 23 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 4 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_basic.phpt +++ php-src/ext/mbstring/tests/mb_stripos_basic.phpt --TEST-- Test mb_stripos() function : basic functionality --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test basic functionality of mb_stripos with ASCII and multibyte characters */ echo "*** Testing mb_stripos() : basic functionality***\n"; mb_internal_encoding('UTF-8'); $string_ascii = 'abc def ABC DEF'; //Japanese string in UTF-8 $string_mb = 'æ¥æ¬èªããã¹ãã§ãã01234ï¼ï¼ï¼ï¼ï¼ã'; echo "\n-- ISO-8859-1 string 1 --\n"; var_dump(mb_stripos($string_ascii, 'd', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 2 --\n"; var_dump(mb_stripos($string_ascii, 'D', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 3 --\n"; var_dump(mb_stripos($string_ascii, 'd', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 4 --\n"; var_dump(mb_stripos($string_ascii, 'D', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 5 --\n"; var_dump(mb_stripos($string_ascii, 'c', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 6 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 7 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 8 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 9 --\n"; var_dump(mb_stripos($string_ascii, '123', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 10 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 11 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 12 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 13 --\n"; var_dump(mb_stripos($string_ascii, '123', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 14 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 15 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 16 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 17 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 5, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 18 --\n"; var_dump(mb_stripos($string_ascii, '123', 4, 'ISO-8859-1')); echo "\n-- Multibyte string 1 --\n"; $needle1 = 'æ¥æ¬èª'; var_dump(mb_stripos($string_mb, $needle1)); echo "\n-- Multibyte string 2 --\n"; $needle2 = 'ããã«ã¡ã¯ãä¸ç'; var_dump(mb_stripos($string_mb, $needle2)); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : basic functionality*** -- ISO-8859-1 string 1 -- int(4) -- ISO-8859-1 string 2 -- int(4) -- ISO-8859-1 string 3 -- int(4) -- ISO-8859-1 string 4 -- int(4) -- ISO-8859-1 string 5 -- int(10) -- ISO-8859-1 string 6 -- int(2) -- ISO-8859-1 string 7 -- int(2) -- ISO-8859-1 string 8 -- int(4) -- ISO-8859-1 string 9 -- bool(false) -- ISO-8859-1 string 10 -- int(2) -- ISO-8859-1 string 11 -- int(2) -- ISO-8859-1 string 12 -- int(4) -- ISO-8859-1 string 13 -- bool(false) -- ISO-8859-1 string 14 -- int(10) -- ISO-8859-1 string 15 -- int(10) -- ISO-8859-1 string 16 -- int(4) -- ISO-8859-1 string 17 -- int(12) -- ISO-8859-1 string 18 -- bool(false) -- Multibyte string 1 -- int(0) -- Multibyte string 2 -- bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43840.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43840.phpt +++ php-src/ext/mbstring/tests/bug43840.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_error.phpt +++ php-src/ext/mbstring/tests/mb_split_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt +++ php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt --TEST-- Test mb_substr_count() function : variation - pass a $needle that overlaps in $haystack --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_substr_count') or die("skip mb_substr_count() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_substr_count(string $haystack, string $needle [, string $encoding]) * Description: Count the number of substring occurrences * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_substr_count() a $needle that overlaps in $haystack and see whether * it counts only the first occurrence or all other occurrences regardless whether they * were part of previous match */ echo "*** Testing mb_substr_count() : usage variations ***\n"; echo "\n-- ASCII String --\n"; $string_ascii = 'abcabcabc'; var_dump(mb_substr_count($string_ascii, 'abcabc')); //needle overlaps in haystack echo "\n-- Multibyte String --\n"; $string_mb = base64_decode('5pel5pys6Kqe5pel5pys6Kqe5pel5pys6Kqe'); $needle_mb = base64_decode('5pel5pys6Kqe5pel5pys6Kqe'); var_dump(mb_substr_count($string_mb, $needle_mb, 'utf-8')); echo "Done"; ?> --EXPECTF-- *** Testing mb_substr_count() : usage variations *** -- ASCII String -- int(1) -- Multibyte String -- int(1) Done --UEXPECTF-- *** Testing mb_substr_count() : usage variations *** -- ASCII String -- int(1) -- Multibyte String -- int(1) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_error1.phpt +++ php-src/ext/mbstring/tests/mb_strripos_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation7.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_variation7.phpt +++ php-src/ext/mbstring/tests/mb_substr_variation7.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_error2.phpt +++ php-src/ext/mbstring/tests/mb_stristr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation2.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $needle arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $needle arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $haystack = 'string_val'; $offset = 0; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $needle argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $input, $offset, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- bool(false) -- Iteration 2 -- bool(false) -- Iteration 3 -- bool(false) -- Iteration 4 -- bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- bool(false) -- Iteration 7 -- bool(false) -- Iteration 8 -- bool(false) -- Iteration 9 -- bool(false) -- Iteration 10 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 11 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 12 -- bool(false) -- Iteration 13 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 14 -- bool(false) -- Iteration 15 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 16 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 18 -- int(0) -- Iteration 19 -- int(0) -- Iteration 20 -- bool(false) -- Iteration 21 -- bool(false) -- Iteration 22 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 23 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 2 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43994.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43994.phpt +++ php-src/ext/mbstring/tests/bug43994.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_error2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_error2.phpt --TEST-- Test mb_stripos() function : error conditions - Pass unknown encoding --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass an unknown encoding to mb_stripos() to test behaviour */ echo "*** Testing mb_stripos() : error conditions ***\n"; $haystack = 'Hello, world'; $needle = 'world'; $offset = 2; $encoding = 'unknown-encoding'; var_dump( mb_stripos($haystack, $needle, $offset, $encoding) ); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : error conditions *** Warning: mb_stripos(): Unknown encoding "unknown-encoding" in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt +++ php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt +++ php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt --TEST-- Test mb_regex_encoding() function : usage variations - test different encodings --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_regex_encoding') or die("skip mb_regex_encoding() is not available in this build"); ?> --FILE-- <?php /* Prototype : string mb_regex_encoding([string $encoding]) * Description: Returns the current encoding for regex as a string. * Source code: ext/mbstring/php_mbregex.c */ /* * Test all listed encoding types from php.net to check all are known to function * NB: The strings passed are *NOT* necessarily encoded in the encoding passed to the function. * This test is purely to see whether the function recognises the encoding. */ echo "*** Testing mb_regex_encoding() : usage variations ***\n"; $encoding = array('UCS-4', /*1*/ 'UCS-4BE', 'UCS-4LE', 'UCS-2', 'UCS-2BE', /*5*/ 'UCS-2LE', 'UTF-32', 'UTF-32BE', 'UTF-32LE', 'UTF-16', /*10*/ 'UTF-16BE', 'UTF-16LE', 'UTF-7', 'UTF7-IMAP', 'UTF-8', /*15*/ 'ASCII', 'EUC-JP', 'SJIS', 'eucJP-win', 'SJIS-win', /*20*/ 'ISO-2022-JP', 'JIS', 'ISO-8859-1', 'ISO-8859-2', 'ISO-8859-3', /*25*/ 'ISO-8859-4', 'ISO-8859-5', 'ISO-8859-6', 'ISO-8859-7', 'ISO-8859-8', /*30*/ 'ISO-8859-9', 'ISO-8859-10', 'ISO-8859-13', 'ISO-8859-14', 'ISO-8859-15', /*35*/ 'byte2be', 'byte2le', 'byte4be', 'byte4le', 'BASE64', /*40*/ 'HTML-ENTITIES', '7bit', '8bit', 'EUC-CN', 'CP936', /*45*/ 'HZ', 'EUC-TW', 'CP950', 'BIG-5', 'EUC-KR', /*50*/ 'UHC', 'ISO-2022-KR', 'Windows-1251', 'Windows-1252', 'CP866', /*55*/ 'KOI8-R'); /*56*/ $iterator = 1; foreach($encoding as $enc) { echo "\n-- Iteration $iterator --\n"; var_dump(mb_regex_encoding()); var_dump(mb_regex_encoding($enc)); var_dump(mb_regex_encoding()); $iterator++; } echo "Done"; ?> --EXPECTF-- *** Testing mb_regex_encoding() : usage variations *** -- Iteration 1 -- string(%d) "%s" bool(true) string(5) "UCS-4" -- Iteration 2 -- string(5) "UCS-4" bool(true) string(7) "UCS-4BE" -- Iteration 3 -- string(7) "UCS-4BE" bool(true) string(7) "UCS-4LE" -- Iteration 4 -- string(7) "UCS-4LE" bool(true) string(5) "UCS-2" -- Iteration 5 -- string(5) "UCS-2" bool(true) string(7) "UCS-2BE" -- Iteration 6 -- string(7) "UCS-2BE" bool(true) string(7) "UCS-2LE" -- Iteration 7 -- string(7) "UCS-2LE" bool(true) string(6) "UTF-32" -- Iteration 8 -- string(6) "UTF-32" bool(true) string(8) "UTF-32BE" -- Iteration 9 -- string(8) "UTF-32BE" bool(true) string(8) "UTF-32LE" -- Iteration 10 -- string(8) "UTF-32LE" bool(true) string(6) "UTF-16" -- Iteration 11 -- string(6) "UTF-16" bool(true) string(8) "UTF-16BE" -- Iteration 12 -- string(8) "UTF-16BE" bool(true) string(8) "UTF-16LE" -- Iteration 13 -- string(8) "UTF-16LE" bool(true) string(5) "UTF-7" -- Iteration 14 -- string(5) "UTF-7" bool(true) string(9) "UTF7-IMAP" -- Iteration 15 -- string(9) "UTF7-IMAP" bool(true) string(5) "UTF-8" -- Iteration 16 -- string(5) "UTF-8" bool(true) string(5) "ASCII" -- Iteration 17 -- string(5) "ASCII" bool(true) string(6) "EUC-JP" -- Iteration 18 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 19 -- string(4) "SJIS" bool(true) string(6) "EUC-JP" -- Iteration 20 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 21 -- string(4) "SJIS" bool(true) string(4) "ISO-2022-JP" -- Iteration 22 -- string(11) "ISO-2022-JP" bool(true) string(3) "JIS" -- Iteration 23 -- string(3) "JIS" bool(true) string(10) "ISO-8859-1" -- Iteration 24 -- string(10) "ISO-8859-1" bool(true) string(10) "ISO-8859-2" -- Iteration 25 -- string(10) "ISO-8859-2" bool(true) string(10) "ISO-8859-3" -- Iteration 26 -- string(10) "ISO-8859-3" bool(true) string(10) "ISO-8859-4" -- Iteration 27 -- string(10) "ISO-8859-4" bool(true) string(10) "ISO-8859-5" -- Iteration 28 -- string(10) "ISO-8859-5" bool(true) string(10) "ISO-8859-6" -- Iteration 29 -- string(10) "ISO-8859-6" bool(true) string(10) "ISO-8859-7" -- Iteration 30 -- string(10) "ISO-8859-7" bool(true) string(10) "ISO-8859-8" -- Iteration 31 -- string(10) "ISO-8859-8" bool(true) string(10) "ISO-8859-9" -- Iteration 32 -- string(10) "ISO-8859-9" bool(true) string(11) "ISO-8859-10" -- Iteration 33 -- string(11) "ISO-8859-10" bool(true) string(11) "ISO-8859-13" -- Iteration 34 -- string(11) "ISO-8859-13" bool(true) string(11) "ISO-8859-14" -- Iteration 35 -- string(11) "ISO-8859-14" bool(true) string(11) "ISO-8859-15" -- Iteration 36 -- string(11) "ISO-8859-15" bool(true) string(7) "byte2be" -- Iteration 37 -- string(7) "byte2be" bool(true) string(7) "byte2le" -- Iteration 38 -- string(7) "byte2le" bool(true) string(7) "byte4be" -- Iteration 39 -- string(7) "byte4be" bool(true) string(7) "byte4le" -- Iteration 40 -- string(7) "byte4le" bool(true) string(6) "BASE64" -- Iteration 41 -- string(6) "BASE64" bool(true) string(13) "HTML-ENTITIES" -- Iteration 42 -- string(13) "HTML-ENTITIES" bool(true) string(4) "7bit" -- Iteration 43 -- string(4) "7bit" bool(true) string(4) "8bit" -- Iteration 44 -- string(4) "8bit" bool(true) string(6) "EUC-CN" -- Iteration 45 -- string(6) "EUC-CN" bool(true) string(5) "CP936" -- Iteration 46 -- string(5) "CP936" bool(true) string(2) "HZ" -- Iteration 47 -- string(2) "HZ" bool(true) string(6) "EUC-TW" -- Iteration 48 -- string(6) "EUC-TW" bool(true) string(5) "CP950" -- Iteration 49 -- string(5) "CP950" bool(true) string(5) "BIG5" -- Iteration 50 -- string(5) "BIG5" bool(true) string(6) "EUC-KR" -- Iteration 51 -- string(6) "EUC-KR" bool(true) string(3) "UHC" -- Iteration 52 -- string(3) "UHC" bool(true) string(11) "ISO-2022-KR" -- Iteration 53 -- string(11) "ISO-2022-KR" bool(true) string(12) "Windows-1251" -- Iteration 54 -- string(12) "Windows-1251" bool(true) string(12) "Windows-1252" -- Iteration 55 -- string(12) "Windows-1252" bool(true) string(5) "CP866" -- Iteration 56 -- string(5) "CP866" bool(true) string(6) "KOI8-R" Done --UEXPECTF-- *** Testing mb_regex_encoding() : usage variations *** -- Iteration 1 -- string(%d) "%s" bool(true) string(5) "UCS-4" -- Iteration 2 -- string(5) "UCS-4" bool(true) string(7) "UCS-4BE" -- Iteration 3 -- string(7) "UCS-4BE" bool(true) string(7) "UCS-4LE" -- Iteration 4 -- string(7) "UCS-4LE" bool(true) string(5) "UCS-2" -- Iteration 5 -- string(5) "UCS-2" bool(true) string(7) "UCS-2BE" -- Iteration 6 -- string(7) "UCS-2BE" bool(true) string(7) "UCS-2LE" -- Iteration 7 -- string(7) "UCS-2LE" bool(true) string(6) "UTF-32" -- Iteration 8 -- string(6) "UTF-32" bool(true) string(8) "UTF-32BE" -- Iteration 9 -- string(8) "UTF-32BE" bool(true) string(8) "UTF-32LE" -- Iteration 10 -- string(8) "UTF-32LE" bool(true) string(6) "UTF-16" -- Iteration 11 -- string(6) "UTF-16" bool(true) string(8) "UTF-16BE" -- Iteration 12 -- string(8) "UTF-16BE" bool(true) string(8) "UTF-16LE" -- Iteration 13 -- string(8) "UTF-16LE" bool(true) string(5) "UTF-7" -- Iteration 14 -- string(5) "UTF-7" bool(true) string(9) "UTF7-IMAP" -- Iteration 15 -- string(9) "UTF7-IMAP" bool(true) string(5) "UTF-8" -- Iteration 16 -- string(5) "UTF-8" bool(true) string(5) "ASCII" -- Iteration 17 -- string(5) "ASCII" bool(true) string(6) "EUC-JP" -- Iteration 18 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 19 -- string(4) "SJIS" bool(true) string(6) "EUC-JP" -- Iteration 20 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 21 -- string(4) "SJIS" Warning: mb_regex_encoding(): Unknown encoding "ISO-2022-JP" in %s on line %d bool(false) string(4) "SJIS" -- Iteration 22 -- string(11) "SJIS" bool(true) string(3) "JIS" -- Iteration 23 -- string(3) "JIS" bool(true) string(10) "ISO-8859-1" -- Iteration 24 -- string(10) "ISO-8859-1" bool(true) string(10) "ISO-8859-2" -- Iteration 25 -- string(10) "ISO-8859-2" bool(true) string(10) "ISO-8859-3" -- Iteration 26 -- string(10) "ISO-8859-3" bool(true) string(10) "ISO-8859-4" -- Iteration 27 -- string(10) "ISO-8859-4" bool(true) string(10) "ISO-8859-5" -- Iteration 28 -- string(10) "ISO-8859-5" bool(true) string(10) "ISO-8859-6" -- Iteration 29 -- string(10) "ISO-8859-6" bool(true) string(10) "ISO-8859-7" -- Iteration 30 -- string(10) "ISO-8859-7" bool(true) string(10) "ISO-8859-8" -- Iteration 31 -- string(10) "ISO-8859-8" bool(true) string(10) "ISO-8859-9" -- Iteration 32 -- string(10) "ISO-8859-9" bool(true) string(11) "ISO-8859-10" -- Iteration 33 -- string(11) "ISO-8859-10" bool(true) string(11) "ISO-8859-13" -- Iteration 34 -- string(11) "ISO-8859-13" bool(true) string(11) "ISO-8859-14" -- Iteration 35 -- string(11) "ISO-8859-14" bool(true) string(11) "ISO-8859-15" -- Iteration 36 -- string(11) "ISO-8859-15" bool(true) string(7) "byte2be" -- Iteration 37 -- string(7) "byte2be" bool(true) string(7) "byte2le" -- Iteration 38 -- string(7) "byte2le" bool(true) string(7) "byte4be" -- Iteration 39 -- string(7) "byte4be" bool(true) string(7) "byte4le" -- Iteration 40 -- string(7) "byte4le" bool(true) string(6) "BASE64" -- Iteration 41 -- string(6) "BASE64" bool(true) string(13) "HTML-ENTITIES" -- Iteration 42 -- string(13) "HTML-ENTITIES" bool(true) string(4) "7bit" -- Iteration 43 -- string(4) "7bit" bool(true) string(4) "8bit" -- Iteration 44 -- string(4) "8bit" bool(true) string(6) "EUC-CN" -- Iteration 45 -- string(6) "EUC-CN" bool(true) string(5) "CP936" -- Iteration 46 -- string(5) "CP936" bool(true) string(2) "HZ" -- Iteration 47 -- string(2) "HZ" bool(true) string(6) "EUC-TW" -- Iteration 48 -- string(6) "EUC-TW" bool(true) string(5) "CP950" -- Iteration 49 -- string(5) "CP950" bool(true) string(5) "BIG5" -- Iteration 50 -- string(5) "BIG5" bool(true) string(6) "EUC-KR" -- Iteration 51 -- string(6) "EUC-KR" bool(true) string(3) "UHC" -- Iteration 52 -- string(3) "UHC" bool(true) string(11) "ISO-2022-KR" -- Iteration 53 -- string(11) "ISO-2022-KR" bool(true) string(12) "Windows-1251" -- Iteration 54 -- string(12) "Windows-1251" bool(true) string(12) "Windows-1252" -- Iteration 55 -- string(12) "Windows-1252" bool(true) string(5) "CP866" -- Iteration 56 -- string(5) "CP866" bool(true) string(6) "KOI8-R" Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_error1.phpt +++ php-src/ext/mbstring/tests/mb_stripos_error1.phpt --TEST-- Test mb_stripos() function : error conditions - Pass incorrect number of args --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test how mb_stripos behaves when passed an incorrect number of arguments */ echo "*** Testing mb_stripos() : error conditions ***\n"; //Test mb_stripos with one more than the expected number of arguments echo "\n-- Testing mb_stripos() function with more than expected no. of arguments --\n"; $haystack = 'string_val'; $needle = 'string_val'; $offset = 10; $encoding = 'string_val'; $extra_arg = 10; var_dump( mb_stripos($haystack, $needle, $offset, $encoding, $extra_arg) ); // Testing mb_stripos with one less than the expected number of arguments echo "\n-- Testing mb_stripos() function with less than expected no. of arguments --\n"; $haystack = 'string_val'; var_dump( mb_stripos($haystack) ); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : error conditions *** -- Testing mb_stripos() function with more than expected no. of arguments -- Warning: mb_stripos() expects at most 4 parameters, 5 given in %s on line %d bool(false) -- Testing mb_stripos() function with less than expected no. of arguments -- Warning: mb_stripos() expects at least 2 parameters, 1 given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_substr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strstr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation1.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation1.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types to $haystack arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $haystack arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $needle = 'string_val'; $offset = 0; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $haystack argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($input, $needle, $offset, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- bool(false) -- Iteration 2 -- bool(false) -- Iteration 3 -- bool(false) -- Iteration 4 -- bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- bool(false) -- Iteration 7 -- bool(false) -- Iteration 8 -- bool(false) -- Iteration 9 -- bool(false) -- Iteration 10 -- bool(false) -- Iteration 11 -- bool(false) -- Iteration 12 -- bool(false) -- Iteration 13 -- bool(false) -- Iteration 14 -- bool(false) -- Iteration 15 -- bool(false) -- Iteration 16 -- bool(false) -- Iteration 17 -- bool(false) -- Iteration 18 -- bool(false) -- Iteration 19 -- bool(false) -- Iteration 20 -- bool(false) -- Iteration 21 -- bool(false) -- Iteration 22 -- bool(false) -- Iteration 23 -- bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 1 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation1.phpt +++ php-src/ext/mbstring/tests/mb_split_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_error.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation3.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation3.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $offset arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $offset arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $needle = 'a'; $haystack = 'string_val'; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $offest argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $needle, $input, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- int(8) -- Iteration 2 -- int(8) -- Iteration 3 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 4 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 7 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 8 -- int(8) -- Iteration 9 -- int(8) -- Iteration 10 -- int(8) -- Iteration 11 -- int(8) -- Iteration 12 -- int(8) -- Iteration 13 -- int(8) -- Iteration 14 -- int(8) -- Iteration 15 -- int(8) -- Iteration 16 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 18 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 19 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 20 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 21 -- Warning: mb_stripos() expects parameter 3 to be long, object given in %s on line %d bool(false) -- Iteration 22 -- int(8) -- Iteration 23 -- int(8) -- Iteration 24 -- Warning: mb_stripos() expects parameter 3 to be long, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strstr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strstr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation3.phpt +++ php-src/ext/mbstring/tests/mb_split_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt +++ php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strpos_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strpos_variation5.phpt --TEST-- Test mb_strpos() function : usage variations - Pass different integers as $offset argument --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_strpos') or die("skip mb_strpos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_strpos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test how mb_strpos() behaves when passed different integers as $offset argument * The character length of $string_ascii and $string_mb is the same, * and the needle appears at the same positions in both strings */ mb_internal_encoding('UTF-8'); echo "*** Testing mb_strpos() : usage variations ***\n"; $string_ascii = '+Is an English string'; //21 chars $needle_ascii = 'g'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); //21 chars $needle_mb = base64_decode('44CC'); /* * Loop through integers as multiples of ten for $offset argument * mb_strpos should not be able to accept negative values as $offset. * 60 is larger than *BYTE* count for $string_mb */ for ($i = -10; $i <= 60; $i += 10) { echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; var_dump(mb_strpos($string_ascii, $needle_ascii, $i)); echo "--Multibyte String --\n"; var_dump(mb_strpos($string_mb, $needle_mb, $i, 'UTF-8')); } echo "Done"; ?> --EXPECTF-- *** Testing mb_strpos() : usage variations *** **-- Offset is: -10 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 0 --** -- ASCII String -- int(9) --Multibyte String -- int(9) **-- Offset is: 10 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 20 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 30 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 40 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 50 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 60 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) Done --UEXPECTF-- *** Testing mb_strpos() : usage variations *** **-- Offset is: -10 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 0 --** -- ASCII String -- int(9) --Multibyte String -- int(9) **-- Offset is: 10 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 20 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 30 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 40 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 50 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 60 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_basic2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt +++ php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_basic.phpt +++ php-src/ext/mbstring/tests/mb_strripos_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_error2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_basic2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_basic.phpt +++ php-src/ext/mbstring/tests/mb_stristr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos.phpt +++ php-src/ext/mbstring/tests/mb_stripos.phpt --TEST-- mb_stripos() --SKIPIF-- <?php extension_loaded('mbstring') or die('skip mbstring not available'); ?> --FILE-- <?php // TODO: Add more encodings //$debug=true; ini_set('include_path', dirname(__FILE__)); include_once('common.inc'); // Test string $euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; // EUC-JP - With encoding parameter mb_internal_encoding('UTF-8') or print("mb_internal_encoding() failed\n"); echo "== POSITIVE OFFSET ==\n"; print mb_stripos($euc_jp,'ÆüËܸì', 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, '0', 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 3, 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 0, 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp,'ÆüËܸì', 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, '0', 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 3, 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 0, 15, 'EUC-JP') . "\n"; // Negative offset // Note: PHP Warning - offset is negative. // Note: For offset(-15). It does not return position of latter string. (ie the same result as -50) echo "== NEGATIVE OFFSET ==\n"; $r = mb_stripos($euc_jp,'ÆüËܸì', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, '0', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 3, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 0, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp,'ÆüËܸì', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, '0', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 3, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 0, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; // Out of range - should return false print ("== OUT OF RANGE ==\n"); $r = mb_stripos($euc_jp,'ÆüËܸì', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, '0', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, 3, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, 0, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; // Note: Returned NULL string // echo gettype($r). ' val '. $r ."\n"; // Non-existent echo "== NON-EXISTENT ==\n"; $r = mb_stripos($euc_jp, '´Ú¹ñ¸ì', 0, 'EUC-JP'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp, "\n", 0, 'EUC-JP'); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No encoding parameter echo "== NO ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); print mb_stripos($euc_jp,'ÆüËܸì', 0) . "\n"; print mb_stripos($euc_jp, '0', 0) . "\n"; print mb_stripos($euc_jp, 3, 0) . "\n"; print mb_stripos($euc_jp, 0, 0) . "\n"; $r = mb_stripos($euc_jp,'´Ú¹ñ¸ì', 0); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp,"\n", 0); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No offset and encoding parameter echo "== NO OFFSET AND ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); print mb_stripos($euc_jp,'ÆüËܸì') . "\n"; print mb_stripos($euc_jp, '0') . "\n"; print mb_stripos($euc_jp, 3) . "\n"; print mb_stripos($euc_jp, 0) . "\n"; $r = mb_stripos($euc_jp,'´Ú¹ñ¸ì'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp,"\n"); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // Invalid Parameters echo "== INVALID PARAMETER TEST ==\n"; $r = mb_stripos($euc_jp,'','EUC-JP'); ($r === FALSE) ? print("OK_NULL\n") : print("NG_NULL\n"); $r = mb_stripos($euc_jp, $t_ary, 'EUC-JP'); ($r === FALSE) ? print("OK_ARRAY\n") : print("NG_ARRAY\n"); $r = mb_stripos($euc_jp, $t_obj, 'EUC-JP'); ($r === FALSE) ? print("OK_OBJECT\n") : print("NG_OBJECT\n"); $r = mb_stripos($euc_jp, $t_obj, 'BAD_ENCODING'); ($r === FALSE) ? print("OK_BAD_ENCODING\n") : print("NG_BAD_ENCODING\n"); ?> --EXPECT-- == POSITIVE OFFSET == 10 0 3 0 34 30 33 30 == NEGATIVE OFFSET == ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET == OUT OF RANGE == OK_OUT_RANGE OK_OUT_RANGE OK_OUT_RANGE OK_OUT_RANGE == NON-EXISTENT == OK_STR OK_NEWLINE == NO ENCODING PARAMETER == 10 0 3 0 OK_STR OK_NEWLINE == NO OFFSET AND ENCODING PARAMETER == 10 0 3 0 OK_STR OK_NEWLINE == INVALID PARAMETER TEST == ERR: Warning OK_NULL ERR: Warning OK_ARRAY ERR: Warning OK_OBJECT ERR: Warning OK_BAD_ENCODING http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_error1.phpt +++ php-src/ext/mbstring/tests/mb_stristr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43998.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43998.phpt +++ php-src/ext/mbstring/tests/bug43998.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation2.phpt
http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation2.phpt Wed Dec 3 13:03:55 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_substr() : usage variations ***\n"; // Initialise function arguments not being substituted -$str = 'string_val'; +$str = b'string_val'; $start = 1; $length = 5; @@ -96,7 +96,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr($str, $start, $length, $input)); + $res = mb_substr($str, $start, $length, $input); + if ($res === false) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -192,16 +198,16 @@ bool(false) -- Iteration 18 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 19 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 20 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 21 -- -string(5) "tring" +string(10) "7472696e67" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_basic.phpt Wed Dec 3 13:03:55 2008 @@ -20,15 +20,15 @@ mb_internal_encoding('UTF-8'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); echo "\n-- ASCII string 1 --\n"; -var_dump(mb_strrpos($string_ascii, 'is', 4, 'ISO-8859-1')); +var_dump(mb_strrpos($string_ascii, b'is', 4, 'ISO-8859-1')); echo "\n-- ASCII string 2 --\n"; -var_dump(mb_strrpos($string_ascii, 'hello, world')); +var_dump(mb_strrpos($string_ascii, b'hello, world')); echo "\n-- Multibyte string 1 --\n"; $needle1 = base64_decode('44CC'); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation3.phpt Wed Dec 3 13:03:55 2008 @@ -19,8 +19,8 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'a'; -$haystack = 'string_val'; +$needle = b'a'; +$haystack = b'string_val'; $encoding = 'utf-8'; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strlen_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strlen_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strlen_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strlen_variation1.phpt Wed Dec 3 13:03:55 2008 @@ -29,12 +29,12 @@ class classA { public function __toString() { - return "Class A object"; + return b"Class A object"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; @@ -72,8 +72,8 @@ '', // string data -/*18*/ "string", - 'string', +/*18*/ b"string", + b'string', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -23,19 +23,19 @@ //contains japanese characters, ASCII digits and different, UTF-8 encoded digits $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -$character_classes = array ('[[:alnum:]]+', /*1*/ - '[[:alpha:]]+', - '[[:ascii:]]+', - '[[:blank:]]+', - '[[:cntrl:]]+',/*5*/ - '[[:digit:]]+', - '[[:graph:]]+', - '[[:lower:]]+', - '[[:print:]]+', - '[[:punct:]]+', /*10*/ - '[[:space:]]+', - '[[:upper:]]+', - '[[:xdigit:]]+'); /*13*/ +$character_classes = array (b'[[:alnum:]]+', /*1*/ + b'[[:alpha:]]+', + b'[[:ascii:]]+', + b'[[:blank:]]+', + b'[[:cntrl:]]+',/*5*/ + b'[[:digit:]]+', + b'[[:graph:]]+', + b'[[:lower:]]+', + b'[[:print:]]+', + b'[[:punct:]]+', /*10*/ + b'[[:space:]]+', + b'[[:upper:]]+', + b'[[:xdigit:]]+'); /*13*/ $iterator = 1; foreach ($character_classes as $pattern) { http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_basic.phpt Wed Dec 3 13:03:55 2008 @@ -20,12 +20,12 @@ mb_internal_encoding('UTF-8'); -$string_ascii = 'abc def'; +$string_ascii = b'abc def'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); echo "\n-- ASCII string 1 --\n"; -var_dump(mb_strpos($string_ascii, 'd', 2, 'ISO-8859-1')); +var_dump(mb_strpos($string_ascii, b'd', 2, 'ISO-8859-1')); echo "\n-- ASCII string 2 --\n"; var_dump(mb_strpos($string_ascii, '123')); @@ -40,7 +40,7 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_strpos() : basic functionality*** -- ASCII string 1 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr.phpt?r1=1.3.20.1&r2=1.3.20.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr.phpt diff -u php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.1 php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.2 --- php-src/ext/mbstring/tests/mb_substr.phpt:1.3.20.1 Sat Jul 29 17:11:09 2006 +++ php-src/ext/mbstring/tests/mb_substr.phpt Wed Dec 3 13:03:55 2008 @@ -12,24 +12,24 @@ include_once('common.inc'); // EUC-JP -$euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; +$euc_jp = b'0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; -print "1: ". mb_substr($euc_jp, 10, 10,'EUC-JP') . "\n"; -print "2: ". mb_substr($euc_jp, 0, 100,'EUC-JP') . "\n"; +print "1: ". bin2hex(mb_substr($euc_jp, 10, 10,'EUC-JP')) . "\n"; +print "2: ". bin2hex(mb_substr($euc_jp, 0, 100,'EUC-JP')) . "\n"; $str = mb_substr($euc_jp, 100, 10,'EUC-JP'); // Note: returns last character -($str === "") ? print "3 OK\n" : print "NG: $str\n"; +($str === "") ? print "3 OK\n" : print "NG: ".bin2hex($str)."\n"; $str = mb_substr($euc_jp, -100, 10,'EUC-JP'); -($str !== "") ? print "4 OK: $str\n" : print "NG: $str\n"; +($str !== "") ? print "4 OK: ".bin2hex($str)."\n" : print "NG: ".bin2hex($str)."\n"; ?> --EXPECT-- -1: ÆüËܸì¤Ç¤¹¡£EUC- -2: 0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£ÆüËܸì¤ÏÌÌÅݽ¤¤¡£ +1: c6fccbdcb8eca4c7a4b9a1a34555432d +2: 30313233a4b3a4cecab8bbfacef3a4cfc6fccbdcb8eca4c7a4b9a1a34555432d4a50a4f2bbc8a4c3a4c6a4a4a4dea4b9a1a3c6fccbdcb8eca4cfccccc5ddbdada4a4a1a3 3 OK -4 OK: 0123¤³¤Îʸ»úÎó¤Ï +4 OK: 30313233a4b3a4cecab8bbfacef3a4cf http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -18,10 +18,10 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; -$uppers = array('Basic Latin' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', +$uppers = array('Basic Latin' => b'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'Characters With Accents' => base64_decode('w4DDgcOCw4PDhMOFw4bDh8OIw4nDisOLw4zDjcOOw4/DkMORw5LDk8OUw5XDlg=='), 'Russian' => base64_decode('0JDQkdCS0JPQlNCV0JbQlw==')); -$lowers = array('Basic Latin' => 'abcdefghijklmnopqrstuvwxyz', +$lowers = array('Basic Latin' => b'abcdefghijklmnopqrstuvwxyz', 'Characters With Accents' => base64_decode('w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=='), 'Russian' => base64_decode('0LDQsdCy0LPQtNC10LbQtw==')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt diff -u php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic.phpt Wed Dec 3 13:03:55 2008 @@ -21,13 +21,22 @@ */ echo "*** Testing mb_encode_mimeheader() : basic ***\n"; -mb_internal_encoding('utf-8'); -$inputs = array('English' => 'This is an English string. 0123456789', - 'Japanese' => base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CC'), +$english = array('English' => 'This is an English string. 0123456789'); +$nonEnglish = array('Japanese' => base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CC'), 'Greek' => base64_decode('zpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrvOt869zrnOus+MIM66zrXOr868zrXOvc6/LiAwMTIzNDU2Nzg5Lg==')); -foreach ($inputs as $lang => $input) { +foreach ($english as $lang => $input) { + echo "\nLanguage: $lang\n"; + echo "-- Base 64: --\n"; + var_dump(mb_encode_mimeheader($input, 'UTF-8', 'B')); + echo "-- Quoted-Printable --\n"; + var_dump(mb_encode_mimeheader($input, 'UTF-8', 'Q')); +} + +mb_internal_encoding('utf-8'); + +foreach ($nonEnglish as $lang => $input) { echo "\nLanguage: $lang\n"; echo "-- Base 64: --\n"; var_dump(mb_encode_mimeheader($input, 'UTF-8', 'B')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos.phpt?r1=1.4&r2=1.4.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos.phpt diff -u php-src/ext/mbstring/tests/mb_strpos.phpt:1.4 php-src/ext/mbstring/tests/mb_strpos.phpt:1.4.6.1 --- php-src/ext/mbstring/tests/mb_strpos.phpt:1.4 Mon Feb 3 20:29:07 2003 +++ php-src/ext/mbstring/tests/mb_strpos.phpt Wed Dec 3 13:03:55 2008 @@ -12,18 +12,18 @@ // Test string -$euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; +$euc_jp = b'0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; // EUC-JP - With encoding parameter mb_internal_encoding('UTF-8') or print("mb_internal_encoding() failed\n"); echo "== POSITIVE OFFSET ==\n"; -print mb_strpos($euc_jp,'ÆüËܸì', 0, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp, '0', 0, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 0, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'0', 0, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 3, 0, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 0, 0, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp,'ÆüËܸì', 15, 'EUC-JP') . "\n"; -print mb_strpos($euc_jp, '0', 15, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 15, 'EUC-JP') . "\n"; +print mb_strpos($euc_jp, b'0', 15, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 3, 15, 'EUC-JP') . "\n"; print mb_strpos($euc_jp, 0, 15, 'EUC-JP') . "\n"; @@ -31,17 +31,17 @@ // Note: PHP Warning - offset is negative. // Note: For offset(-15). It does not return position of latter string. (ie the same result as -50) echo "== NEGATIVE OFFSET ==\n"; -$r = mb_strpos($euc_jp,'ÆüËܸì', -15, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp, '0', -15, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 3, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 0, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp,'ÆüËܸì', -50, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; -$r = mb_strpos($euc_jp, '0', -50, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_strpos($euc_jp, 3, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; @@ -50,9 +50,9 @@ // Out of range - should return false print ("== OUT OF RANGE ==\n"); -$r = mb_strpos($euc_jp,'ÆüËܸì', 40, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'ÆüËܸì', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; -$r = mb_strpos($euc_jp, '0', 40, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'0', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_strpos($euc_jp, 3, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; @@ -64,9 +64,9 @@ // Non-existent echo "== NON-EXISTENT ==\n"; -$r = mb_strpos($euc_jp, '´Ú¹ñ¸ì', 0, 'EUC-JP'); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì', 0, 'EUC-JP'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp, "\n", 0, 'EUC-JP'); +$r = mb_strpos($euc_jp, b"\n", 0, 'EUC-JP'); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; @@ -74,28 +74,28 @@ echo "== NO ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); -print mb_strpos($euc_jp,'ÆüËܸì', 0) . "\n"; -print mb_strpos($euc_jp, '0', 0) . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì', 0) . "\n"; +print mb_strpos($euc_jp, b'0', 0) . "\n"; print mb_strpos($euc_jp, 3, 0) . "\n"; print mb_strpos($euc_jp, 0, 0) . "\n"; -$r = mb_strpos($euc_jp,'´Ú¹ñ¸ì', 0); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì', 0); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp,"\n", 0); +$r = mb_strpos($euc_jp, b"\n", 0); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No offset and encoding parameter echo "== NO OFFSET AND ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); -print mb_strpos($euc_jp,'ÆüËܸì') . "\n"; -print mb_strpos($euc_jp, '0') . "\n"; +print mb_strpos($euc_jp, b'ÆüËܸì') . "\n"; +print mb_strpos($euc_jp, b'0') . "\n"; print mb_strpos($euc_jp, 3) . "\n"; print mb_strpos($euc_jp, 0) . "\n"; -$r = mb_strpos($euc_jp,'´Ú¹ñ¸ì'); +$r = mb_strpos($euc_jp, b'´Ú¹ñ¸ì'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; -$r = mb_strpos($euc_jp,"\n"); +$r = mb_strpos($euc_jp, b"\n"); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strlen_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strlen_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strlen_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strlen_basic.phpt Wed Dec 3 13:03:55 2008 @@ -18,7 +18,7 @@ echo "*** Testing mb_strlen() : basic functionality***\n"; -$string_ascii = 'abc def'; +$string_ascii = b'abc def'; //Japanese string in UTF-8 $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg.phpt?r1=1.5&r2=1.5.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg.phpt diff -u php-src/ext/mbstring/tests/mb_ereg.phpt:1.5 php-src/ext/mbstring/tests/mb_ereg.phpt:1.5.6.1 --- php-src/ext/mbstring/tests/mb_ereg.phpt:1.5 Fri Nov 15 15:34:57 2002 +++ php-src/ext/mbstring/tests/mb_ereg.phpt Wed Dec 3 13:03:55 2008 @@ -17,14 +17,13 @@ mb_regex_encoding( $test_enc ); $pat = mb_convert_encoding( $pat, $test_enc, $in_enc ); $str = mb_convert_encoding( $str, $test_enc, $in_enc ); - - printf( "(%d)%s\n", mb_ereg( $pat, $str, $reg ), ( is_array( $reg )? mb_convert_encoding( implode( ' ', $reg ), $in_enc, $test_enc ) : '' ) ); + printf( "(%d)%s\n", mb_ereg( $pat, $str, $reg ), ( is_array( $reg )? bin2hex(mb_convert_encoding( implode( b' ', $reg ), $in_enc, $test_enc )) : '' ) ); } function do_tests( $enc ) { - test_ereg( $enc, 'abc ([a-z]+) ([a-z]+) ([a-z]+)$', "abc def ghi jkl" ); - $pat = '([£á-£ú]+) ([ ¤¢-¤«]+)([¤«-¤Ê]+) ([¤ï-¤ó]+)$'; - test_ereg( $enc, $pat, '£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó' ); - test_ereg( $enc, $pat, '£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð' ); + test_ereg( $enc, b'abc ([a-z]+) ([a-z]+) ([a-z]+)$', b"abc def ghi jkl" ); + $pat = b'([£á-£ú]+) ([ ¤¢-¤«]+)([¤«-¤Ê]+) ([¤ï-¤ó]+)$'; + test_ereg( $enc, $pat, b'£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó' ); + test_ereg( $enc, $pat, b'£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð' ); } foreach( $encs as $enc ) { @@ -33,15 +32,15 @@ ?> --EXPECT-- -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(27)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(27)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð -(15)abc def ghi jkl def ghi jkl -(39)£á£â£ã ¤¢¤ª¤¤ ¤«¤³¤Ê ¤ï¤ñ¤ó £á£â£ã ¤¢¤ª¤¤ ¤« ¤³¤Ê ¤ï¤ñ¤ó -(39)£í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð £í£ú£ø£æ£ð ¤¦¤ª¤« ¤¤« ¤ò¤ð +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(27)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(27)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 +(15)6162632064656620676869206a6b6c2064656620676869206a6b6c +(39)a3e1a3e2a3e320a4a2a4aaa4a420a4aba4b3a4ca20a4efa4f1a4f320a3e1a3e2a3e320a4a2a4aaa4a420a4ab20a4b3a4ca20a4efa4f1a4f3 +(39)a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab20a4ada4ab20a4f2a4f020a3eda3faa3f8a3e6a3f020a4a6a4aaa4ab2020a4ada4ab20a4f2a4f0 \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation4.phpt Wed Dec 3 13:03:55 2008 @@ -20,7 +20,7 @@ mb_internal_encoding('UTF-8'); -$string_ascii = '+Is an English string'; //21 chars +$string_ascii = b'+Is an English string'; //21 chars $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); //21 chars @@ -35,7 +35,8 @@ } echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; - var_dump($a = mb_substr($string_ascii, $i, 4)); + $a = mb_substr($string_ascii, $i, 4); + var_dump(base64_encode($a)); echo "--Multibyte String --\n"; $b = mb_substr($string_mb, $i, 4, 'UTF-8'); if (strlen($a) == mb_strlen($b, 'UTF-8')) { // should return same length @@ -48,60 +49,60 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_substr() : usage variations *** **-- Offset is: -60 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -50 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -40 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -30 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: -20 --** -- ASCII String -- -string(4) "Is a" +string(8) "SXMgYQ==" --Multibyte String -- string(16) "5pys6Kqe44OG44Kt" **-- Offset is: -10 --** -- ASCII String -- -string(4) "ish " +string(8) "aXNoIA==" --Multibyte String -- string(8) "MTIzNA==" **-- Offset is: 0 --** -- ASCII String -- -string(4) "+Is " +string(8) "K0lzIA==" --Multibyte String -- string(16) "5pel5pys6Kqe44OG" **-- Offset is: 10 --** -- ASCII String -- -string(4) "lish" +string(8) "bGlzaA==" --Multibyte String -- string(8) "MDEyMw==" **-- Offset is: 20 --** -- ASCII String -- -string(1) "g" +string(4) "Zw==" --Multibyte String -- string(4) "44CC" http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation1.phpt Wed Dec 3 13:03:55 2008 @@ -18,8 +18,6 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; -// Initialise function arguments not being substituted -$encoding = 'UTF-8'; //get an unset variable $unset_var = 10; @@ -93,7 +91,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtolower($input, $encoding) ); + var_dump( mb_strtolower($input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation2.phpt Wed Dec 3 13:03:55 2008 @@ -19,7 +19,7 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'string_val'; +$haystack = b'string_val'; $offset = 0; $encoding = 'utf-8'; @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "Class A object"; + return b"Class A object"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; @@ -74,8 +74,8 @@ '', // string data -/*18*/ "string", - 'string', +/*18*/ b"string", + b'string', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation7.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation7.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation7.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation7.phpt Wed Dec 3 13:03:55 2008 @@ -27,10 +27,10 @@ echo "Could not set regex encoding to utf-8\n"; } -$string_ascii = 'This is an English string. 0123456789.'; -$regex_ascii = '([A-Z]\w{1,4}is( [aeiou]|h)) ?.*\.\s[0-9]+(5([6-9][79]){2})[[:punct:]]$'; +$string_ascii = b'This is an English string. 0123456789.'; +$regex_ascii = b'([A-Z]\w{1,4}is( [aeiou]|h)) ?.*\.\s[0-9]+(5([6-9][79]){2})[[:punct:]]$'; var_dump(mb_ereg($regex_ascii, $string_ascii, $regs_ascii)); -var_dump($regs_ascii); +base64_encode_var_dump($regs_ascii); $string_mb = base64_decode('zpHPhc+Ez4wgzrXOr869zrHOuSDOtc67zrvOt869zrnOus+MIM66zrXOr868zrXOvc6/LiAwMTIzNDU2Nzg5Lg=='); $regex_mb = base64_decode("W86RLc6pXShcdysgKSvOtVvOsS3PiVxzXSvOui4qKM+MfM6/KS4qXC5cc1swLTldKyg1KFs2LTldWzc5XSl7Mn0pW1s6cHVuY3Q6XV0k"); @@ -62,21 +62,21 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : usage variations *** Regex encoding set to utf-8 int(38) array(5) { [0]=> - string(38) "This is an English string. 0123456789." + string(52) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4OS4=" [1]=> - string(6) "This i" + string(8) "VGhpcyBp" [2]=> - string(2) " i" + string(4) "IGk=" [3]=> - string(5) "56789" + string(8) "NTY3ODk=" [4]=> - string(2) "89" + string(4) "ODk=" } int(64) array(5) { http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -19,8 +19,8 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'a'; -$haystack = 'string_val'; +$needle = b'a'; +$haystack = b'string_val'; $encoding = 'utf-8'; //get an unset variable @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "7"; + return b"7"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello world EOT; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'hello, world'; -$needle = 'world'; +$haystack = b'hello, world'; +$needle = b'world'; $offset = 0; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,6 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; // Initialise function arguments not being substituted -$encoding = 'UTF-8'; //get an unset variable $unset_var = 10; @@ -94,7 +93,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtoupper($input, $encoding) ); + var_dump( mb_strtoupper($input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -19,8 +19,6 @@ echo "*** Testing mb_encode_mimeheader() : usage variations ***\n"; -mb_internal_encoding('utf-8'); - // Initialise function arguments not being substituted $charset = 'utf-8'; $transfer_encoding = 'B'; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strtolower_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_strtolower() : usage variations ***\n"; // Initialise function arguments not being substituted -$sourcestring = 'Hello, World'; +$sourcestring = b'Hello, World'; //get an unset variable $unset_var = 10; @@ -94,7 +94,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtolower($sourcestring, $input) ); + $res = mb_strtolower($sourcestring, $input); + if ($res === false || $res == NULL) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -191,16 +197,16 @@ bool(false) -- Iteration 18 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 19 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 20 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 21 -- -string(12) "hello, world" +string(24) "68656c6c6f2c20776f726c64" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,6 @@ // Initialise function arguments not being substituted (if any) $haystack = 'hello, world'; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -94,7 +93,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr_count($haystack, $input, $encoding) ); + var_dump( mb_substr_count($haystack, $input) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation5.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation5.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation5.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation5.phpt Wed Dec 3 13:03:56 2008 @@ -20,16 +20,16 @@ mb_regex_encoding('utf-8'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -$regex = '^.*?[[:blank:]]?[[:punct:][:digit:]]+\.?$'; +$regex = b'^.*?[[:blank:]]?[[:punct:][:digit:]]+\.?$'; echo "\nASCII String without \$regs arg:\t\t"; var_dump(mb_ereg($regex, $string_ascii)); echo "ASCII String with \$regs arg:\n"; var_dump(mb_ereg($regex, $string_ascii, $regs_ascii)); -var_dump($regs_ascii); +base64_encode_var_dump($regs_ascii); echo "\nMultibyte String without \$regs arg:\t"; var_dump(mb_ereg($regex, $string_mb)); @@ -69,7 +69,7 @@ int(38) array(1) { [0]=> - string(38) "This is an English string. 0123456789." + string(52) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4OS4=" } Multibyte String without $regs arg: int(1) http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -21,7 +21,6 @@ // Initialise function arguments not being substituted $start = 0; $length = 5; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -95,7 +94,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr($input, $start, $length, $encoding)); + var_dump( mb_substr($input, $start, $length)); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_error.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_error.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_error.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_error.phpt Wed Dec 3 13:03:56 2008 @@ -21,15 +21,15 @@ //Test mb_ereg with one more than the expected number of arguments echo "\n-- Testing mb_ereg() function with more than expected no. of arguments --\n"; -$pattern = 'string_val'; -$string = 'string_val'; +$pattern = b'string_val'; +$string = b'string_val'; $registers = array(1, 2); $extra_arg = 10; var_dump( mb_ereg($pattern, $string, $registers, $extra_arg) ); // Testing mb_ereg with one less than the expected number of arguments echo "\n-- Testing mb_ereg() function with less than expected no. of arguments --\n"; -$pattern = 'string_val'; +$pattern = b'string_val'; var_dump( mb_ereg($pattern) ); echo "Done"; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation5.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_variation5.phpt diff -u php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_variation5.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_variation5.phpt Wed Dec 3 13:03:56 2008 @@ -6,7 +6,6 @@ function_exists('mb_substr') or die("skip mb_substr() is not available in this build"); ?> --FILE-- - <?php /* Prototype : string mb_substr(string $str, int $start [, int $length [, string $encoding]]) * Description: Returns part of a string @@ -21,7 +20,7 @@ mb_internal_encoding('UTF-8'); -$string_ascii = '+Is an English string'; //21 chars +$string_ascii = b'+Is an English string'; //21 chars //Japanese string, 21 characters $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); @@ -37,7 +36,8 @@ } echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; - var_dump($a = mb_substr($string_ascii, 1, $i)); + $a = mb_substr($string_ascii, 1, $i); + var_dump(base64_encode($a)); echo "--Multibyte String --\n"; $b = mb_substr($string_mb, 1, $i, 'UTF-8'); if (strlen($a) == mb_strlen($b, 'UTF-8')) { // should return same length @@ -50,8 +50,7 @@ echo "Done"; ?> - ---EXPECTF-- +--EXPECT-- *** Testing mb_substr() : usage variations *** **-- Offset is: -60 --** @@ -86,7 +85,7 @@ **-- Offset is: -10 --** -- ASCII String -- -string(10) "Is an Engl" +string(16) "SXMgYW4gRW5nbA==" --Multibyte String -- string(40) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMA==" @@ -98,37 +97,37 @@ **-- Offset is: 10 --** -- ASCII String -- -string(10) "Is an Engl" +string(16) "SXMgYW4gRW5nbA==" --Multibyte String -- string(40) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMA==" **-- Offset is: 20 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 30 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 40 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 50 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" **-- Offset is: 60 --** -- ASCII String -- -string(20) "Is an English string" +string(28) "SXMgYW4gRW5nbGlzaCBzdHJpbmc=" --Multibyte String -- string(68) "5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII=" Done \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strrpos_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -19,7 +19,7 @@ echo "*** Testing mb_strrpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$needle = 'world'; +$needle = b'world'; $offset = 0; $encoding = 'utf-8'; @@ -31,12 +31,12 @@ class classA { public function __toString() { - return "hello, world"; + return b"hello, world"; } } // heredoc string -$heredoc = <<<EOT +$heredoc = b<<<EOT hello, world EOT; @@ -74,8 +74,8 @@ '', // string data -/*18*/ "hello, world", - 'hello, world', +/*18*/ b"hello, world", + b'hello, world', $heredoc, // object data http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split.phpt?r1=1.4&r2=1.4.6.1&diff_format=u Index: php-src/ext/mbstring/tests/mb_split.phpt diff -u php-src/ext/mbstring/tests/mb_split.phpt:1.4 php-src/ext/mbstring/tests/mb_split.phpt:1.4.6.1 --- php-src/ext/mbstring/tests/mb_split.phpt:1.4 Fri Nov 29 18:32:50 2002 +++ php-src/ext/mbstring/tests/mb_split.phpt Wed Dec 3 13:03:56 2008 @@ -23,15 +23,15 @@ } } - var_dump( mb_split( " ", "a b c d e f g" ) - == mb_split( "[[:space:]]", "a\nb\tc\nd e f g" ) ); + var_dump( mb_split( b" ", b"a b c d e f g" ) + == mb_split( b"[[:space:]]", b"a\nb\tc\nd e f g" ) ); for ( $i = 0; $i < 5; ++$i ) { - verify_split( " ", "a\tb\tc\td e\tf g", $i ); + verify_split( b" ", b"a\tb\tc\td e\tf g", $i ); } for ( $i = 1; $i < 5; ++$i ) { - verify_split( "\xa1\xa1+", "\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1", $i ); + verify_split( b"\xa1\xa1+", b"\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1\xa1\xa1\xa1\xa2\xa2\xa1\xa1\xa1", $i ); } ?> http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_basic.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_basic.phpt Wed Dec 3 13:03:56 2008 @@ -23,9 +23,9 @@ } else { echo "Could not set regex encoding to utf-8\n"; } -$string_ascii = 'This is an English string. 0123456789.'; -$regex_ascii1 = '(.*is)+.*\.[[:blank:]][0-9]{9}'; -$regex_ascii2 = '.*is+'; +$string_ascii = b'This is an English string. 0123456789.'; +$regex_ascii1 = b'(.*is)+.*\.[[:blank:]][0-9]{9}'; +$regex_ascii2 = b'.*is+'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); $regex_mb1 = base64_decode('KOaXpeacrOiqnikuKj8oWzEtOV0rKQ=='); @@ -37,9 +37,9 @@ var_dump(mb_ereg($regex_ascii2, $string_ascii)); echo "--With \$regs argument --\n"; var_dump(mb_ereg($regex_ascii1, $string_ascii, $regs_ascii1)); -var_dump($regs_ascii1); +base64_encode_var_dump($regs_ascii1); var_dump(mb_ereg($regex_ascii2, $string_ascii, $regs_ascii2)); -var_dump($regs_ascii2); +base64_encode_var_dump($regs_ascii2); echo "\n**-- Multibyte String --**\n"; echo "-- Without \$regs argument --\n"; @@ -76,7 +76,7 @@ } ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : basic functionality *** Regex encoding set to utf-8 @@ -88,14 +88,14 @@ int(36) array(2) { [0]=> - string(36) "This is an English string. 012345678" + string(48) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4gMDEyMzQ1Njc4" [1]=> - string(17) "This is an Englis" + string(24) "VGhpcyBpcyBhbiBFbmdsaXM=" } int(17) array(1) { [0]=> - string(17) "This is an Englis" + string(24) "VGhpcyBpcyBhbiBFbmdsaXM=" } **-- Multibyte String --** http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt?r1=1.1.2.2&r2=1.1.2.3&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.2 php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.3 --- php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt:1.1.2.2 Mon Feb 18 14:28:13 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation2.phpt Wed Dec 3 13:03:56 2008 @@ -20,7 +20,7 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; // Initialise function arguments not being substituted -$sourcestring = 'Hello, World'; +$sourcestring = b'Hello, World'; //get an unset variable $unset_var = 10; @@ -94,7 +94,13 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_strtoupper($sourcestring, $input) ); + $res = mb_strtoupper($sourcestring, $input); + if ($res === false || $res == NULL) { + var_dump($res); + } + else { + var_dump(bin2hex($res)); + } $iterator++; }; @@ -192,16 +198,16 @@ bool(false) -- Iteration 18 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 19 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 20 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 21 -- -string(12) "HELLO, WORLD" +string(24) "48454c4c4f2c20574f524c44" -- Iteration 22 -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation1.phpt Wed Dec 3 13:03:56 2008 @@ -21,7 +21,6 @@ // Initialise function arguments not being substituted $needle = 'world'; -$encoding = 'utf-8'; //get an unset variable $unset_var = 10; @@ -95,7 +94,7 @@ $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; - var_dump( mb_substr_count($input, $needle, $encoding) ); + var_dump( mb_substr_count($input, $needle) ); $iterator++; }; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_substr_count_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_substr_count() : usage variations ***\n"; // Initialise function arguments not being substituted (if any) -$haystack = 'hello, world'; -$needle = 'world'; +$haystack = b'hello, world'; +$needle = b'world'; //get an unset variable $unset_var = 10; http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation3.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation3.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation3.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation3.phpt Wed Dec 3 13:03:56 2008 @@ -21,18 +21,18 @@ mb_regex_encoding('utf-8'); // have to set otherwise won't match $mb properly $mb = base64_decode('5pel5pys6Kqe'); -$character_classes = array ('aB1' => '[[:alnum:]]+', /*1*/ - 'aBcD' => '[[:alpha:]]+', - 'ab/=' => '[[:ascii:]]+', - " \t" => '[[:blank:]]+', - '234' => '[[:digit:]]+', /*5*/ - "$mb" => '[[:graph:]]+', - 'fjds' => '[[:lower:]]+', - "$mb\t" => '[[:print:]]+', - '.!"*@' => '[[:punct:]]+', - "\t" => '[[:space:]]+', /*10*/ - 'IDSJV' => '[[:upper:]]+', - '3b5D' => '[[:xdigit:]]+'); /*12*/ +$character_classes = array (b'aB1' => b'[[:alnum:]]+', /*1*/ + b'aBcD' => b'[[:alpha:]]+', + b'ab/=' => b'[[:ascii:]]+', + b" \t" => b'[[:blank:]]+', + b'234' => b'[[:digit:]]+', /*5*/ + "$mb" => b'[[:graph:]]+', + b'fjds' => b'[[:lower:]]+', + b"$mb\t" => b'[[:print:]]+', + b'.!"*@' => b'[[:punct:]]+', + b"\t" => b'[[:space:]]+', /*10*/ + b'IDSJV' => b'[[:upper:]]+', + b'3b5D' => b'[[:xdigit:]]+'); /*12*/ $iterator = 1; foreach($character_classes as $string => $pattern) { @@ -42,11 +42,7 @@ // make sure any multibyte output is in base 64 echo "\n-- Iteration $iterator --\n"; var_dump(mb_ereg($pattern, $string, $regs)); - if (strpos($string, $mb) === FALSE) { - var_dump($regs); - } else { - base64_encode_var_dump($regs); - } + base64_encode_var_dump($regs); $iterator++; } /** @@ -74,42 +70,42 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : variation *** -- Iteration 1 -- int(3) array(1) { [0]=> - string(3) "aB1" + string(4) "YUIx" } -- Iteration 2 -- int(4) array(1) { [0]=> - string(4) "aBcD" + string(8) "YUJjRA==" } -- Iteration 3 -- int(4) array(1) { [0]=> - string(4) "ab/=" + string(8) "YWIvPQ==" } -- Iteration 4 -- int(2) array(1) { [0]=> - string(2) " " + string(4) "IAk=" } -- Iteration 5 -- int(3) array(1) { [0]=> - string(3) "234" + string(4) "MjM0" } -- Iteration 6 -- @@ -123,7 +119,7 @@ int(4) array(1) { [0]=> - string(4) "fjds" + string(8) "Zmpkcw==" } -- Iteration 8 -- @@ -137,27 +133,27 @@ int(5) array(1) { [0]=> - string(5) ".!"*@" + string(8) "LiEiKkA=" } -- Iteration 10 -- int(1) array(1) { [0]=> - string(1) " " + string(4) "CQ==" } -- Iteration 11 -- int(5) array(1) { [0]=> - string(5) "IDSJV" + string(8) "SURTSlY=" } -- Iteration 12 -- int(4) array(1) { [0]=> - string(4) "3b5D" + string(8) "M2I1RA==" } Done \ No newline at end of file http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strpos_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strpos_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strpos_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -20,8 +20,8 @@ echo "*** Testing mb_strpos() : usage variations ***\n"; // Initialise function arguments not being substituted -$haystack = 'string_val'; -$needle = 'val'; +$haystack = b'string_val'; +$needle = b'val'; $offset = 0; //get an unset variable http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_variation4.phpt Wed Dec 3 13:03:56 2008 @@ -19,10 +19,10 @@ echo "*** Testing mb_strtoupper() : usage variations ***\n"; -$uppers = array('Basic Latin' => 'ABCDEFGHIJKLMNOPQRSTUVWXYZ', +$uppers = array('Basic Latin' => b'ABCDEFGHIJKLMNOPQRSTUVWXYZ', 'Characters With Accents' => base64_decode('w4DDgcOCw4PDhMOFw4bDh8OIw4nDisOLw4zDjcOOw4/DkMORw5LDk8OUw5XDlg=='), 'Russian' => base64_decode('0JDQkdCS0JPQlNCV0JbQlw==')); -$lowers = array('Basic Latin' => 'abcdefghijklmnopqrstuvwxyz', +$lowers = array('Basic Latin' => b'abcdefghijklmnopqrstuvwxyz', 'Characters With Accents' => base64_decode('w6DDocOiw6PDpMOlw6bDp8Oow6nDqsOrw6zDrcOuw6/DsMOxw7LDs8O0w7XDtg=='), 'Russian' => base64_decode('0LDQsdCy0LPQtNC10LbQtw==')); http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt diff -u php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt:1.1.2.1 Fri Feb 1 15:27:38 2008 +++ php-src/ext/mbstring/tests/mb_strtoupper_basic.phpt Wed Dec 3 13:03:56 2008 @@ -19,14 +19,14 @@ echo "*** Testing mb_strtoupper() : basic functionality ***\n"; mb_internal_encoding('utf-8'); -$ascii_lower = 'abcdefghijklmnopqrstuvwxyz'; -$ascii_upper = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; +$ascii_lower = b'abcdefghijklmnopqrstuvwxyz'; +$ascii_upper = b'ABCDEFGHIJKLMNOPQRSTUVWXYZ'; $greek_lower = base64_decode('zrHOss6zzrTOtc62zrfOuM65zrrOu868zr3Ovs6/z4DPgc+Dz4TPhc+Gz4fPiM+J'); $greek_upper = base64_decode('zpHOks6TzpTOlc6WzpfOmM6ZzprOm86czp3Ons6fzqDOoc6jzqTOpc6mzqfOqM6p'); echo "\n-- ASCII String --\n"; $ascii = mb_strtoupper($ascii_lower); -var_dump($ascii); +var_dump(base64_encode($ascii)); if($ascii == $ascii_upper) { echo "Correctly converted\n"; @@ -47,11 +47,11 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_strtoupper() : basic functionality *** -- ASCII String -- -string(26) "ABCDEFGHIJKLMNOPQRSTUVWXYZ" +string(36) "QUJDREVGR0hJSktMTU5PUFFSU1RVVldYWVo=" Correctly converted -- Multibyte String -- http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_variation6.phpt?r1=1.1.2.1&r2=1.1.2.2&diff_format=u Index: php-src/ext/mbstring/tests/mb_ereg_variation6.phpt diff -u php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.1 php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.2 --- php-src/ext/mbstring/tests/mb_ereg_variation6.phpt:1.1.2.1 Fri Feb 1 15:27:37 2008 +++ php-src/ext/mbstring/tests/mb_ereg_variation6.phpt Wed Dec 3 13:03:56 2008 @@ -24,20 +24,27 @@ echo "Could not set regex encoding to utf-8\n"; } -$regex_char = array ('\w+', '\W+', '\s+', '\S+', '\d+', '\D+', '\b', '\B'); +$regex_char = array ('\w+' => b'\w+', + '\W+' => b'\W+', + '\s+' => b'\s+', + '\S+' => b'\S+', + '\d+' => b'\d+', + '\D+' => b'\D+', + '\b' => b'\b', + '\B' => b'\B'); -$string_ascii = 'This is an English string. 0123456789.'; +$string_ascii = b'This is an English string. 0123456789.'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); -foreach ($regex_char as $char) { - echo "\n--** Pattern is: $char **--\n"; +foreach ($regex_char as $displayChar => $char) { + echo "\n--** Pattern is: $displayChar **--\n"; if (@$regs_ascii || @$regs_mb) { $regs_ascii = null; $regs_mb = null; } echo "-- ASCII String: --\n"; var_dump(mb_ereg($char, $string_ascii, $regs_ascii)); - var_dump($regs_ascii); + base64_encode_var_dump($regs_ascii); echo "-- Multibyte String: --\n"; var_dump(mb_ereg($char, $string_mb, $regs_mb)); @@ -70,7 +77,7 @@ echo "Done"; ?> ---EXPECTF-- +--EXPECT-- *** Testing mb_ereg() : usage variations *** Regex encoding set to utf-8 @@ -79,7 +86,7 @@ int(4) array(1) { [0]=> - string(4) "This" + string(8) "VGhpcw==" } -- Multibyte String: -- int(27) @@ -93,7 +100,7 @@ int(1) array(1) { [0]=> - string(1) " " + string(4) "IA==" } -- Multibyte String: -- int(3) @@ -107,7 +114,7 @@ int(1) array(1) { [0]=> - string(1) " " + string(4) "IA==" } -- Multibyte String: -- bool(false) @@ -118,7 +125,7 @@ int(4) array(1) { [0]=> - string(4) "This" + string(8) "VGhpcw==" } -- Multibyte String: -- int(53) @@ -132,7 +139,7 @@ int(10) array(1) { [0]=> - string(10) "0123456789" + string(16) "MDEyMzQ1Njc4OQ==" } -- Multibyte String: -- int(20) @@ -146,7 +153,7 @@ int(27) array(1) { [0]=> - string(27) "This is an English string. " + string(36) "VGhpcyBpcyBhbiBFbmdsaXNoIHN0cmluZy4g" } -- Multibyte String: -- int(30) http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation2.phpt +++ php-src/ext/mbstring/tests/mb_split_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt +++ php-src/ext/mbstring/tests/mb_convert_encoding_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation4.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation4.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $encoding arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $encoding arg to test behaviour * Where possible 'UTF-8' has been entered as a string value */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $haystack = 'string_val'; $needle = 'val'; $offset = 0; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "UTF-8"; } } // heredoc string $heredoc = <<<EOT UTF-8 EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $input argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "UTF-8", 'UTF-8', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $needle, $offset, $input)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- Warning: mb_stripos(): Unknown encoding "0" in %s on line %d bool(false) -- Iteration 2 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 3 -- Warning: mb_stripos(): Unknown encoding "12345" in %s on line %d bool(false) -- Iteration 4 -- Warning: mb_stripos(): Unknown encoding "-2345" in %s on line %d bool(false) -- Iteration 5 -- Warning: mb_stripos(): Unknown encoding "10.5" in %s on line %d bool(false) -- Iteration 6 -- Warning: mb_stripos(): Unknown encoding "-10.5" in %s on line %d bool(false) -- Iteration 7 -- Warning: mb_stripos(): Unknown encoding "123456789000" in %s on line %d bool(false) -- Iteration 8 -- Warning: mb_stripos(): Unknown encoding "1.23456789E-9" in %s on line %d bool(false) -- Iteration 9 -- Warning: mb_stripos(): Unknown encoding "0.5" in %s on line %d bool(false) -- Iteration 10 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 11 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 12 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 13 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 14 -- Warning: mb_stripos(): Unknown encoding "1" in %s on line %d bool(false) -- Iteration 15 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 16 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 18 -- int(7) -- Iteration 19 -- int(7) -- Iteration 20 -- int(7) -- Iteration 21 -- int(7) -- Iteration 22 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 23 -- Warning: mb_stripos(): Unknown encoding "" in %s on line %d bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 4 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_basic.phpt +++ php-src/ext/mbstring/tests/mb_stripos_basic.phpt --TEST-- Test mb_stripos() function : basic functionality --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test basic functionality of mb_stripos with ASCII and multibyte characters */ echo "*** Testing mb_stripos() : basic functionality***\n"; mb_internal_encoding('UTF-8'); $string_ascii = 'abc def ABC DEF'; //Japanese string in UTF-8 $string_mb = 'æ¥æ¬èªããã¹ãã§ãã01234ï¼ï¼ï¼ï¼ï¼ã'; echo "\n-- ISO-8859-1 string 1 --\n"; var_dump(mb_stripos($string_ascii, 'd', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 2 --\n"; var_dump(mb_stripos($string_ascii, 'D', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 3 --\n"; var_dump(mb_stripos($string_ascii, 'd', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 4 --\n"; var_dump(mb_stripos($string_ascii, 'D', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 5 --\n"; var_dump(mb_stripos($string_ascii, 'c', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 6 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 7 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 8 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 9 --\n"; var_dump(mb_stripos($string_ascii, '123', 0, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 10 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 11 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 12 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 13 --\n"; var_dump(mb_stripos($string_ascii, '123', 1, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 14 --\n"; var_dump(mb_stripos($string_ascii, 'c D', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 15 --\n"; var_dump(mb_stripos($string_ascii, 'C d', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 16 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 4, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 17 --\n"; var_dump(mb_stripos($string_ascii, 'deF', 5, 'ISO-8859-1')); echo "\n-- ISO-8859-1 string 18 --\n"; var_dump(mb_stripos($string_ascii, '123', 4, 'ISO-8859-1')); echo "\n-- Multibyte string 1 --\n"; $needle1 = 'æ¥æ¬èª'; var_dump(mb_stripos($string_mb, $needle1)); echo "\n-- Multibyte string 2 --\n"; $needle2 = 'ããã«ã¡ã¯ãä¸ç'; var_dump(mb_stripos($string_mb, $needle2)); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : basic functionality*** -- ISO-8859-1 string 1 -- int(4) -- ISO-8859-1 string 2 -- int(4) -- ISO-8859-1 string 3 -- int(4) -- ISO-8859-1 string 4 -- int(4) -- ISO-8859-1 string 5 -- int(10) -- ISO-8859-1 string 6 -- int(2) -- ISO-8859-1 string 7 -- int(2) -- ISO-8859-1 string 8 -- int(4) -- ISO-8859-1 string 9 -- bool(false) -- ISO-8859-1 string 10 -- int(2) -- ISO-8859-1 string 11 -- int(2) -- ISO-8859-1 string 12 -- int(4) -- ISO-8859-1 string 13 -- bool(false) -- ISO-8859-1 string 14 -- int(10) -- ISO-8859-1 string 15 -- int(10) -- ISO-8859-1 string 16 -- int(4) -- ISO-8859-1 string 17 -- int(12) -- ISO-8859-1 string 18 -- bool(false) -- Multibyte string 1 -- int(0) -- Multibyte string 2 -- bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_indent.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43840.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43840.phpt +++ php-src/ext/mbstring/tests/bug43840.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_error.phpt +++ php-src/ext/mbstring/tests/mb_split_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt +++ php-src/ext/mbstring/tests/mb_substr_count_variation4.phpt --TEST-- Test mb_substr_count() function : variation - pass a $needle that overlaps in $haystack --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_substr_count') or die("skip mb_substr_count() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_substr_count(string $haystack, string $needle [, string $encoding]) * Description: Count the number of substring occurrences * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_substr_count() a $needle that overlaps in $haystack and see whether * it counts only the first occurrence or all other occurrences regardless whether they * were part of previous match */ echo "*** Testing mb_substr_count() : usage variations ***\n"; echo "\n-- ASCII String --\n"; $string_ascii = 'abcabcabc'; var_dump(mb_substr_count($string_ascii, 'abcabc')); //needle overlaps in haystack echo "\n-- Multibyte String --\n"; $string_mb = base64_decode('5pel5pys6Kqe5pel5pys6Kqe5pel5pys6Kqe'); $needle_mb = base64_decode('5pel5pys6Kqe5pel5pys6Kqe'); var_dump(mb_substr_count($string_mb, $needle_mb, 'utf-8')); echo "Done"; ?> --EXPECTF-- *** Testing mb_substr_count() : usage variations *** -- ASCII String -- int(1) -- Multibyte String -- int(1) Done --UEXPECTF-- *** Testing mb_substr_count() : usage variations *** -- ASCII String -- int(1) -- Multibyte String -- int(1) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_error1.phpt +++ php-src/ext/mbstring/tests/mb_strripos_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation7.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_variation7.phpt +++ php-src/ext/mbstring/tests/mb_substr_variation7.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_error2.phpt +++ php-src/ext/mbstring/tests/mb_stristr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation2.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $needle arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $needle arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $haystack = 'string_val'; $offset = 0; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $needle argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $input, $offset, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- bool(false) -- Iteration 2 -- bool(false) -- Iteration 3 -- bool(false) -- Iteration 4 -- bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- bool(false) -- Iteration 7 -- bool(false) -- Iteration 8 -- bool(false) -- Iteration 9 -- bool(false) -- Iteration 10 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 11 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 12 -- bool(false) -- Iteration 13 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 14 -- bool(false) -- Iteration 15 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 16 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 18 -- int(0) -- Iteration 19 -- int(0) -- Iteration 20 -- bool(false) -- Iteration 21 -- bool(false) -- Iteration 22 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 23 -- Warning: mb_stripos(): Empty delimiter. in %s on line %d bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 2 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43994.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43994.phpt +++ php-src/ext/mbstring/tests/bug43994.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_error2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_error2.phpt --TEST-- Test mb_stripos() function : error conditions - Pass unknown encoding --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass an unknown encoding to mb_stripos() to test behaviour */ echo "*** Testing mb_stripos() : error conditions ***\n"; $haystack = 'Hello, world'; $needle = 'world'; $offset = 2; $encoding = 'unknown-encoding'; var_dump( mb_stripos($haystack, $needle, $offset, $encoding) ); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : error conditions *** Warning: mb_stripos(): Unknown encoding "unknown-encoding" in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt +++ php-src/ext/mbstring/tests/mb_ereg_match_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt +++ php-src/ext/mbstring/tests/mb_regex_encoding_variation2.phpt --TEST-- Test mb_regex_encoding() function : usage variations - test different encodings --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_regex_encoding') or die("skip mb_regex_encoding() is not available in this build"); ?> --FILE-- <?php /* Prototype : string mb_regex_encoding([string $encoding]) * Description: Returns the current encoding for regex as a string. * Source code: ext/mbstring/php_mbregex.c */ /* * Test all listed encoding types from php.net to check all are known to function * NB: The strings passed are *NOT* necessarily encoded in the encoding passed to the function. * This test is purely to see whether the function recognises the encoding. */ echo "*** Testing mb_regex_encoding() : usage variations ***\n"; $encoding = array('UCS-4', /*1*/ 'UCS-4BE', 'UCS-4LE', 'UCS-2', 'UCS-2BE', /*5*/ 'UCS-2LE', 'UTF-32', 'UTF-32BE', 'UTF-32LE', 'UTF-16', /*10*/ 'UTF-16BE', 'UTF-16LE', 'UTF-7', 'UTF7-IMAP', 'UTF-8', /*15*/ 'ASCII', 'EUC-JP', 'SJIS', 'eucJP-win', 'SJIS-win', /*20*/ 'ISO-2022-JP', 'JIS', 'ISO-8859-1', 'ISO-8859-2', 'ISO-8859-3', /*25*/ 'ISO-8859-4', 'ISO-8859-5', 'ISO-8859-6', 'ISO-8859-7', 'ISO-8859-8', /*30*/ 'ISO-8859-9', 'ISO-8859-10', 'ISO-8859-13', 'ISO-8859-14', 'ISO-8859-15', /*35*/ 'byte2be', 'byte2le', 'byte4be', 'byte4le', 'BASE64', /*40*/ 'HTML-ENTITIES', '7bit', '8bit', 'EUC-CN', 'CP936', /*45*/ 'HZ', 'EUC-TW', 'CP950', 'BIG-5', 'EUC-KR', /*50*/ 'UHC', 'ISO-2022-KR', 'Windows-1251', 'Windows-1252', 'CP866', /*55*/ 'KOI8-R'); /*56*/ $iterator = 1; foreach($encoding as $enc) { echo "\n-- Iteration $iterator --\n"; var_dump(mb_regex_encoding()); var_dump(mb_regex_encoding($enc)); var_dump(mb_regex_encoding()); $iterator++; } echo "Done"; ?> --EXPECTF-- *** Testing mb_regex_encoding() : usage variations *** -- Iteration 1 -- string(%d) "%s" bool(true) string(5) "UCS-4" -- Iteration 2 -- string(5) "UCS-4" bool(true) string(7) "UCS-4BE" -- Iteration 3 -- string(7) "UCS-4BE" bool(true) string(7) "UCS-4LE" -- Iteration 4 -- string(7) "UCS-4LE" bool(true) string(5) "UCS-2" -- Iteration 5 -- string(5) "UCS-2" bool(true) string(7) "UCS-2BE" -- Iteration 6 -- string(7) "UCS-2BE" bool(true) string(7) "UCS-2LE" -- Iteration 7 -- string(7) "UCS-2LE" bool(true) string(6) "UTF-32" -- Iteration 8 -- string(6) "UTF-32" bool(true) string(8) "UTF-32BE" -- Iteration 9 -- string(8) "UTF-32BE" bool(true) string(8) "UTF-32LE" -- Iteration 10 -- string(8) "UTF-32LE" bool(true) string(6) "UTF-16" -- Iteration 11 -- string(6) "UTF-16" bool(true) string(8) "UTF-16BE" -- Iteration 12 -- string(8) "UTF-16BE" bool(true) string(8) "UTF-16LE" -- Iteration 13 -- string(8) "UTF-16LE" bool(true) string(5) "UTF-7" -- Iteration 14 -- string(5) "UTF-7" bool(true) string(9) "UTF7-IMAP" -- Iteration 15 -- string(9) "UTF7-IMAP" bool(true) string(5) "UTF-8" -- Iteration 16 -- string(5) "UTF-8" bool(true) string(5) "ASCII" -- Iteration 17 -- string(5) "ASCII" bool(true) string(6) "EUC-JP" -- Iteration 18 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 19 -- string(4) "SJIS" bool(true) string(6) "EUC-JP" -- Iteration 20 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 21 -- string(4) "SJIS" bool(true) string(4) "ISO-2022-JP" -- Iteration 22 -- string(11) "ISO-2022-JP" bool(true) string(3) "JIS" -- Iteration 23 -- string(3) "JIS" bool(true) string(10) "ISO-8859-1" -- Iteration 24 -- string(10) "ISO-8859-1" bool(true) string(10) "ISO-8859-2" -- Iteration 25 -- string(10) "ISO-8859-2" bool(true) string(10) "ISO-8859-3" -- Iteration 26 -- string(10) "ISO-8859-3" bool(true) string(10) "ISO-8859-4" -- Iteration 27 -- string(10) "ISO-8859-4" bool(true) string(10) "ISO-8859-5" -- Iteration 28 -- string(10) "ISO-8859-5" bool(true) string(10) "ISO-8859-6" -- Iteration 29 -- string(10) "ISO-8859-6" bool(true) string(10) "ISO-8859-7" -- Iteration 30 -- string(10) "ISO-8859-7" bool(true) string(10) "ISO-8859-8" -- Iteration 31 -- string(10) "ISO-8859-8" bool(true) string(10) "ISO-8859-9" -- Iteration 32 -- string(10) "ISO-8859-9" bool(true) string(11) "ISO-8859-10" -- Iteration 33 -- string(11) "ISO-8859-10" bool(true) string(11) "ISO-8859-13" -- Iteration 34 -- string(11) "ISO-8859-13" bool(true) string(11) "ISO-8859-14" -- Iteration 35 -- string(11) "ISO-8859-14" bool(true) string(11) "ISO-8859-15" -- Iteration 36 -- string(11) "ISO-8859-15" bool(true) string(7) "byte2be" -- Iteration 37 -- string(7) "byte2be" bool(true) string(7) "byte2le" -- Iteration 38 -- string(7) "byte2le" bool(true) string(7) "byte4be" -- Iteration 39 -- string(7) "byte4be" bool(true) string(7) "byte4le" -- Iteration 40 -- string(7) "byte4le" bool(true) string(6) "BASE64" -- Iteration 41 -- string(6) "BASE64" bool(true) string(13) "HTML-ENTITIES" -- Iteration 42 -- string(13) "HTML-ENTITIES" bool(true) string(4) "7bit" -- Iteration 43 -- string(4) "7bit" bool(true) string(4) "8bit" -- Iteration 44 -- string(4) "8bit" bool(true) string(6) "EUC-CN" -- Iteration 45 -- string(6) "EUC-CN" bool(true) string(5) "CP936" -- Iteration 46 -- string(5) "CP936" bool(true) string(2) "HZ" -- Iteration 47 -- string(2) "HZ" bool(true) string(6) "EUC-TW" -- Iteration 48 -- string(6) "EUC-TW" bool(true) string(5) "CP950" -- Iteration 49 -- string(5) "CP950" bool(true) string(5) "BIG5" -- Iteration 50 -- string(5) "BIG5" bool(true) string(6) "EUC-KR" -- Iteration 51 -- string(6) "EUC-KR" bool(true) string(3) "UHC" -- Iteration 52 -- string(3) "UHC" bool(true) string(11) "ISO-2022-KR" -- Iteration 53 -- string(11) "ISO-2022-KR" bool(true) string(12) "Windows-1251" -- Iteration 54 -- string(12) "Windows-1251" bool(true) string(12) "Windows-1252" -- Iteration 55 -- string(12) "Windows-1252" bool(true) string(5) "CP866" -- Iteration 56 -- string(5) "CP866" bool(true) string(6) "KOI8-R" Done --UEXPECTF-- *** Testing mb_regex_encoding() : usage variations *** -- Iteration 1 -- string(%d) "%s" bool(true) string(5) "UCS-4" -- Iteration 2 -- string(5) "UCS-4" bool(true) string(7) "UCS-4BE" -- Iteration 3 -- string(7) "UCS-4BE" bool(true) string(7) "UCS-4LE" -- Iteration 4 -- string(7) "UCS-4LE" bool(true) string(5) "UCS-2" -- Iteration 5 -- string(5) "UCS-2" bool(true) string(7) "UCS-2BE" -- Iteration 6 -- string(7) "UCS-2BE" bool(true) string(7) "UCS-2LE" -- Iteration 7 -- string(7) "UCS-2LE" bool(true) string(6) "UTF-32" -- Iteration 8 -- string(6) "UTF-32" bool(true) string(8) "UTF-32BE" -- Iteration 9 -- string(8) "UTF-32BE" bool(true) string(8) "UTF-32LE" -- Iteration 10 -- string(8) "UTF-32LE" bool(true) string(6) "UTF-16" -- Iteration 11 -- string(6) "UTF-16" bool(true) string(8) "UTF-16BE" -- Iteration 12 -- string(8) "UTF-16BE" bool(true) string(8) "UTF-16LE" -- Iteration 13 -- string(8) "UTF-16LE" bool(true) string(5) "UTF-7" -- Iteration 14 -- string(5) "UTF-7" bool(true) string(9) "UTF7-IMAP" -- Iteration 15 -- string(9) "UTF7-IMAP" bool(true) string(5) "UTF-8" -- Iteration 16 -- string(5) "UTF-8" bool(true) string(5) "ASCII" -- Iteration 17 -- string(5) "ASCII" bool(true) string(6) "EUC-JP" -- Iteration 18 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 19 -- string(4) "SJIS" bool(true) string(6) "EUC-JP" -- Iteration 20 -- string(6) "EUC-JP" bool(true) string(4) "SJIS" -- Iteration 21 -- string(4) "SJIS" Warning: mb_regex_encoding(): Unknown encoding "ISO-2022-JP" in %s on line %d bool(false) string(4) "SJIS" -- Iteration 22 -- string(11) "SJIS" bool(true) string(3) "JIS" -- Iteration 23 -- string(3) "JIS" bool(true) string(10) "ISO-8859-1" -- Iteration 24 -- string(10) "ISO-8859-1" bool(true) string(10) "ISO-8859-2" -- Iteration 25 -- string(10) "ISO-8859-2" bool(true) string(10) "ISO-8859-3" -- Iteration 26 -- string(10) "ISO-8859-3" bool(true) string(10) "ISO-8859-4" -- Iteration 27 -- string(10) "ISO-8859-4" bool(true) string(10) "ISO-8859-5" -- Iteration 28 -- string(10) "ISO-8859-5" bool(true) string(10) "ISO-8859-6" -- Iteration 29 -- string(10) "ISO-8859-6" bool(true) string(10) "ISO-8859-7" -- Iteration 30 -- string(10) "ISO-8859-7" bool(true) string(10) "ISO-8859-8" -- Iteration 31 -- string(10) "ISO-8859-8" bool(true) string(10) "ISO-8859-9" -- Iteration 32 -- string(10) "ISO-8859-9" bool(true) string(11) "ISO-8859-10" -- Iteration 33 -- string(11) "ISO-8859-10" bool(true) string(11) "ISO-8859-13" -- Iteration 34 -- string(11) "ISO-8859-13" bool(true) string(11) "ISO-8859-14" -- Iteration 35 -- string(11) "ISO-8859-14" bool(true) string(11) "ISO-8859-15" -- Iteration 36 -- string(11) "ISO-8859-15" bool(true) string(7) "byte2be" -- Iteration 37 -- string(7) "byte2be" bool(true) string(7) "byte2le" -- Iteration 38 -- string(7) "byte2le" bool(true) string(7) "byte4be" -- Iteration 39 -- string(7) "byte4be" bool(true) string(7) "byte4le" -- Iteration 40 -- string(7) "byte4le" bool(true) string(6) "BASE64" -- Iteration 41 -- string(6) "BASE64" bool(true) string(13) "HTML-ENTITIES" -- Iteration 42 -- string(13) "HTML-ENTITIES" bool(true) string(4) "7bit" -- Iteration 43 -- string(4) "7bit" bool(true) string(4) "8bit" -- Iteration 44 -- string(4) "8bit" bool(true) string(6) "EUC-CN" -- Iteration 45 -- string(6) "EUC-CN" bool(true) string(5) "CP936" -- Iteration 46 -- string(5) "CP936" bool(true) string(2) "HZ" -- Iteration 47 -- string(2) "HZ" bool(true) string(6) "EUC-TW" -- Iteration 48 -- string(6) "EUC-TW" bool(true) string(5) "CP950" -- Iteration 49 -- string(5) "CP950" bool(true) string(5) "BIG5" -- Iteration 50 -- string(5) "BIG5" bool(true) string(6) "EUC-KR" -- Iteration 51 -- string(6) "EUC-KR" bool(true) string(3) "UHC" -- Iteration 52 -- string(3) "UHC" bool(true) string(11) "ISO-2022-KR" -- Iteration 53 -- string(11) "ISO-2022-KR" bool(true) string(12) "Windows-1251" -- Iteration 54 -- string(12) "Windows-1251" bool(true) string(12) "Windows-1252" -- Iteration 55 -- string(12) "Windows-1252" bool(true) string(5) "CP866" -- Iteration 56 -- string(5) "CP866" bool(true) string(6) "KOI8-R" Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_error1.phpt +++ php-src/ext/mbstring/tests/mb_stripos_error1.phpt --TEST-- Test mb_stripos() function : error conditions - Pass incorrect number of args --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test how mb_stripos behaves when passed an incorrect number of arguments */ echo "*** Testing mb_stripos() : error conditions ***\n"; //Test mb_stripos with one more than the expected number of arguments echo "\n-- Testing mb_stripos() function with more than expected no. of arguments --\n"; $haystack = 'string_val'; $needle = 'string_val'; $offset = 10; $encoding = 'string_val'; $extra_arg = 10; var_dump( mb_stripos($haystack, $needle, $offset, $encoding, $extra_arg) ); // Testing mb_stripos with one less than the expected number of arguments echo "\n-- Testing mb_stripos() function with less than expected no. of arguments --\n"; $haystack = 'string_val'; var_dump( mb_stripos($haystack) ); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : error conditions *** -- Testing mb_stripos() function with more than expected no. of arguments -- Warning: mb_stripos() expects at most 4 parameters, 5 given in %s on line %d bool(false) -- Testing mb_stripos() function with less than expected no. of arguments -- Warning: mb_stripos() expects at least 2 parameters, 1 given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_substr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strstr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation1.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation1.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types to $haystack arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $haystack arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $needle = 'string_val'; $offset = 0; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $haystack argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($input, $needle, $offset, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- bool(false) -- Iteration 2 -- bool(false) -- Iteration 3 -- bool(false) -- Iteration 4 -- bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- bool(false) -- Iteration 7 -- bool(false) -- Iteration 8 -- bool(false) -- Iteration 9 -- bool(false) -- Iteration 10 -- bool(false) -- Iteration 11 -- bool(false) -- Iteration 12 -- bool(false) -- Iteration 13 -- bool(false) -- Iteration 14 -- bool(false) -- Iteration 15 -- bool(false) -- Iteration 16 -- bool(false) -- Iteration 17 -- bool(false) -- Iteration 18 -- bool(false) -- Iteration 19 -- bool(false) -- Iteration 20 -- bool(false) -- Iteration 21 -- bool(false) -- Iteration 22 -- bool(false) -- Iteration 23 -- bool(false) -- Iteration 24 -- Warning: mb_stripos() expects parameter 1 to be string, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation1.phpt +++ php-src/ext/mbstring/tests/mb_split_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_error.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_error.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_error.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation5.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation5.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation4.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_variation3.phpt +++ php-src/ext/mbstring/tests/mb_stripos_variation3.phpt --TEST-- Test mb_stripos() function : usage variations - pass different data types as $offset arg --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_stripos') or die("skip mb_stripos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_stripos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Pass mb_stripos different data types as $offset arg to test behaviour */ echo "*** Testing mb_stripos() : usage variations ***\n"; // Initialise function arguments not being substituted $needle = 'a'; $haystack = 'string_val'; $encoding = 'utf-8'; //get an unset variable $unset_var = 10; unset ($unset_var); // get a class class classA { public function __toString() { return "Class A object"; } } // heredoc string $heredoc = <<<EOT hello world EOT; // get a resource variable $fp = fopen(__FILE__, "r"); // unexpected values to be passed to $offest argument $inputs = array( // int data /*1*/ 0, 1, 12345, -2345, // float data /*5*/ 10.5, -10.5, 12.3456789000e10, 12.3456789000E-10, .5, // null data /*10*/ NULL, null, // boolean data /*12*/ true, false, TRUE, FALSE, // empty data /*16*/ "", '', // string data /*18*/ "string", 'string', $heredoc, // object data /*21*/ new classA(), // undefined data /*22*/ @$undefined_var, // unset data /*23*/ @$unset_var, // resource variable /*24*/ $fp ); // loop through each element of $inputs to check the behavior of mb_stripos() $iterator = 1; foreach($inputs as $input) { echo "\n-- Iteration $iterator --\n"; var_dump( mb_stripos($haystack, $needle, $input, $encoding)); $iterator++; }; fclose($fp); echo "Done"; ?> --EXPECTF-- *** Testing mb_stripos() : usage variations *** -- Iteration 1 -- int(8) -- Iteration 2 -- int(8) -- Iteration 3 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 4 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 5 -- bool(false) -- Iteration 6 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 7 -- Warning: mb_stripos(): Offset not contained in string. in %s on line %d bool(false) -- Iteration 8 -- int(8) -- Iteration 9 -- int(8) -- Iteration 10 -- int(8) -- Iteration 11 -- int(8) -- Iteration 12 -- int(8) -- Iteration 13 -- int(8) -- Iteration 14 -- int(8) -- Iteration 15 -- int(8) -- Iteration 16 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 17 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 18 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 19 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 20 -- Warning: mb_stripos() expects parameter 3 to be long, string given in %s on line %d bool(false) -- Iteration 21 -- Warning: mb_stripos() expects parameter 3 to be long, object given in %s on line %d bool(false) -- Iteration 22 -- int(8) -- Iteration 23 -- int(8) -- Iteration 24 -- Warning: mb_stripos() expects parameter 3 to be long, resource given in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strstr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation4.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_variation2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt +++ php-src/ext/mbstring/tests/mb_encode_mimeheader_basic3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_error1.phpt +++ php-src/ext/mbstring/tests/mb_strstr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_basic.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_split_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_split_variation3.phpt +++ php-src/ext/mbstring/tests/mb_split_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt +++ php-src/ext/mbstring/tests/mb_internal_encoding_ini_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strpos_variation5.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strpos_variation5.phpt +++ php-src/ext/mbstring/tests/mb_strpos_variation5.phpt --TEST-- Test mb_strpos() function : usage variations - Pass different integers as $offset argument --SKIPIF-- <?php extension_loaded('mbstring') or die('skip'); function_exists('mb_strpos') or die("skip mb_strpos() is not available in this build"); ?> --FILE-- <?php /* Prototype : int mb_strpos(string $haystack, string $needle [, int $offset [, string $encoding]]) * Description: Find position of first occurrence of a string within another * Source code: ext/mbstring/mbstring.c */ /* * Test how mb_strpos() behaves when passed different integers as $offset argument * The character length of $string_ascii and $string_mb is the same, * and the needle appears at the same positions in both strings */ mb_internal_encoding('UTF-8'); echo "*** Testing mb_strpos() : usage variations ***\n"; $string_ascii = '+Is an English string'; //21 chars $needle_ascii = 'g'; $string_mb = base64_decode('5pel5pys6Kqe44OG44Kt44K544OI44Gn44GZ44CCMDEyMzTvvJXvvJbvvJfvvJjvvJnjgII='); //21 chars $needle_mb = base64_decode('44CC'); /* * Loop through integers as multiples of ten for $offset argument * mb_strpos should not be able to accept negative values as $offset. * 60 is larger than *BYTE* count for $string_mb */ for ($i = -10; $i <= 60; $i += 10) { echo "\n**-- Offset is: $i --**\n"; echo "-- ASCII String --\n"; var_dump(mb_strpos($string_ascii, $needle_ascii, $i)); echo "--Multibyte String --\n"; var_dump(mb_strpos($string_mb, $needle_mb, $i, 'UTF-8')); } echo "Done"; ?> --EXPECTF-- *** Testing mb_strpos() : usage variations *** **-- Offset is: -10 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 0 --** -- ASCII String -- int(9) --Multibyte String -- int(9) **-- Offset is: 10 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 20 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 30 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 40 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 50 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 60 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) Done --UEXPECTF-- *** Testing mb_strpos() : usage variations *** **-- Offset is: -10 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 0 --** -- ASCII String -- int(9) --Multibyte String -- int(9) **-- Offset is: 10 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 20 --** -- ASCII String -- int(20) --Multibyte String -- int(20) **-- Offset is: 30 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 40 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 50 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) **-- Offset is: 60 --** -- ASCII String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) --Multibyte String -- Warning: mb_strpos(): Offset not contained in string. in %s on line %d bool(false) Done http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos_basic2.phpt +++ php-src/ext/mbstring/tests/mb_stripos_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation6.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt +++ php-src/ext/mbstring/tests/mb_ereg_replace_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt +++ php-src/ext/mbstring/tests/mb_ereg_match_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_basic.phpt +++ php-src/ext/mbstring/tests/mb_strripos_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strstr_variation3.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strstr_variation3.phpt +++ php-src/ext/mbstring/tests/mb_strstr_variation3.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_error2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strripos_basic2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strripos_basic2.phpt +++ php-src/ext/mbstring/tests/mb_strripos_basic2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_basic.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_basic.phpt +++ php-src/ext/mbstring/tests/mb_stristr_basic.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stripos.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stripos.phpt +++ php-src/ext/mbstring/tests/mb_stripos.phpt --TEST-- mb_stripos() --SKIPIF-- <?php extension_loaded('mbstring') or die('skip mbstring not available'); ?> --FILE-- <?php // TODO: Add more encodings //$debug=true; ini_set('include_path', dirname(__FILE__)); include_once('common.inc'); // Test string $euc_jp = '0123¤³¤Îʸ»úÎó¤ÏÆüËܸì¤Ç¤¹¡£EUC-JP¤ò»È¤Ã¤Æ¤¤¤Þ¤¹¡£0123ÆüËܸì¤ÏÌÌÅݽ¤¤¡£'; // EUC-JP - With encoding parameter mb_internal_encoding('UTF-8') or print("mb_internal_encoding() failed\n"); echo "== POSITIVE OFFSET ==\n"; print mb_stripos($euc_jp,'ÆüËܸì', 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, '0', 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 3, 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 0, 0, 'EUC-JP') . "\n"; print mb_stripos($euc_jp,'ÆüËܸì', 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, '0', 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 3, 15, 'EUC-JP') . "\n"; print mb_stripos($euc_jp, 0, 15, 'EUC-JP') . "\n"; // Negative offset // Note: PHP Warning - offset is negative. // Note: For offset(-15). It does not return position of latter string. (ie the same result as -50) echo "== NEGATIVE OFFSET ==\n"; $r = mb_stripos($euc_jp,'ÆüËܸì', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, '0', -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 3, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 0, -15, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp,'ÆüËܸì', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, '0', -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 3, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; $r = mb_stripos($euc_jp, 0, -50, 'EUC-JP'); ($r === FALSE) ? print "OK_NEGATIVE_OFFSET\n" : print "NG_NEGATIVE_OFFSET\n"; // Out of range - should return false print ("== OUT OF RANGE ==\n"); $r = mb_stripos($euc_jp,'ÆüËܸì', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, '0', 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, 3, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; $r = mb_stripos($euc_jp, 0, 40, 'EUC-JP'); ($r === FALSE) ? print "OK_OUT_RANGE\n" : print "NG_OUT_RANGE\n"; // Note: Returned NULL string // echo gettype($r). ' val '. $r ."\n"; // Non-existent echo "== NON-EXISTENT ==\n"; $r = mb_stripos($euc_jp, '´Ú¹ñ¸ì', 0, 'EUC-JP'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp, "\n", 0, 'EUC-JP'); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No encoding parameter echo "== NO ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); print mb_stripos($euc_jp,'ÆüËܸì', 0) . "\n"; print mb_stripos($euc_jp, '0', 0) . "\n"; print mb_stripos($euc_jp, 3, 0) . "\n"; print mb_stripos($euc_jp, 0, 0) . "\n"; $r = mb_stripos($euc_jp,'´Ú¹ñ¸ì', 0); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp,"\n", 0); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // EUC-JP - No offset and encoding parameter echo "== NO OFFSET AND ENCODING PARAMETER ==\n"; mb_internal_encoding('EUC-JP') or print("mb_internal_encoding() failed\n"); print mb_stripos($euc_jp,'ÆüËܸì') . "\n"; print mb_stripos($euc_jp, '0') . "\n"; print mb_stripos($euc_jp, 3) . "\n"; print mb_stripos($euc_jp, 0) . "\n"; $r = mb_stripos($euc_jp,'´Ú¹ñ¸ì'); ($r === FALSE) ? print "OK_STR\n" : print "NG_STR\n"; $r = mb_stripos($euc_jp,"\n"); ($r === FALSE) ? print "OK_NEWLINE\n" : print "NG_NEWLINE\n"; // Invalid Parameters echo "== INVALID PARAMETER TEST ==\n"; $r = mb_stripos($euc_jp,'','EUC-JP'); ($r === FALSE) ? print("OK_NULL\n") : print("NG_NULL\n"); $r = mb_stripos($euc_jp, $t_ary, 'EUC-JP'); ($r === FALSE) ? print("OK_ARRAY\n") : print("NG_ARRAY\n"); $r = mb_stripos($euc_jp, $t_obj, 'EUC-JP'); ($r === FALSE) ? print("OK_OBJECT\n") : print("NG_OBJECT\n"); $r = mb_stripos($euc_jp, $t_obj, 'BAD_ENCODING'); ($r === FALSE) ? print("OK_BAD_ENCODING\n") : print("NG_BAD_ENCODING\n"); ?> --EXPECT-- == POSITIVE OFFSET == 10 0 3 0 34 30 33 30 == NEGATIVE OFFSET == ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET ERR: Warning OK_NEGATIVE_OFFSET == OUT OF RANGE == OK_OUT_RANGE OK_OUT_RANGE OK_OUT_RANGE OK_OUT_RANGE == NON-EXISTENT == OK_STR OK_NEWLINE == NO ENCODING PARAMETER == 10 0 3 0 OK_STR OK_NEWLINE == NO OFFSET AND ENCODING PARAMETER == 10 0 3 0 OK_STR OK_NEWLINE == INVALID PARAMETER TEST == ERR: Warning OK_NULL ERR: Warning OK_ARRAY ERR: Warning OK_OBJECT ERR: Warning OK_BAD_ENCODING http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrichr_error2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrichr_error2.phpt +++ php-src/ext/mbstring/tests/mb_strrichr_error2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_error1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_error1.phpt +++ php-src/ext/mbstring/tests/mb_stristr_error1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt +++ php-src/ext/mbstring/tests/mb_decode_mimeheader_variation2.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt +++ php-src/ext/mbstring/tests/mb_strrchr_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/bug43998.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/bug43998.phpt +++ php-src/ext/mbstring/tests/bug43998.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt +++ php-src/ext/mbstring/tests/mb_substitute_character_variation1.phpt http://cvs.php.net/viewvc.cgi/php-src/ext/mbstring/tests/mb_stristr_variation2.phpt?view=markup&rev=1.1 Index: php-src/ext/mbstring/tests/mb_stristr_variation2.phpt +++ php-src/ext/mbstring/tests/mb_stristr_variation2.phpt