--- /dev/null
+--TEST--
+htmlentities() test 1 (cp1252)
+--INI--
+mbstring.internal_encoding=pass
+--FILE--
+<?php
+ var_dump(htmlentities("\x82\x86\x99\x9f", ENT_QUOTES, 'cp1252'));
+ var_dump(htmlentities("\x80\xa2\xa3\xa4\xa5", ENT_QUOTES, 'cp1252'));
+?>
+--EXPECT--
+string(28) "‚†™Ÿ"
+string(32) "€¢£¤¥"
--- /dev/null
+--TEST--
+htmlentities() test 2 (setlocale / fr_FR.ISO-8859-15)
+--SKIPIF--
+<?php setlocale( LC_CTYPE, "fr_FR.ISO-8859-15" ) or die( "skip\n" ); ?>
+--INI--
+mbstring.internal_encoding=pass
+--FILE--
+<?php
+ setlocale( LC_CTYPE, "fr_FR.ISO-8859-15" );
+ var_dump(htmlentities("\xbc\xbd\xbe", ENT_QUOTES, ''));
+?>
+--EXPECT--
+string(20) "ŒœŸ"
--- /dev/null
+--TEST--
+htmlentities() test 3 (setlocale / de_DE.ISO-8859-1)
+--SKIPIF--
+<?php setlocale( LC_CTYPE, "de_DE.ISO-8859-1" ) or die("skip\n"); ?>
+--INI--
+mbstring.internal_encoding=pass
+--FILE--
+<?php
+ setlocale( LC_CTYPE, "de_DE.ISO-8859-1" );
+ var_dump(htmlentities("\xe4\xf6\xfc", ENT_QUOTES, ''));
+?>
+--EXPECT--
+string(18) "äöü"
--- /dev/null
+--TEST--
+htmlentities() test 4 (setlocale / ja_JP.EUC-JP)
+--SKIPIF--
+<?php setlocale( LC_CTYPE, "ja_JP.EUC-JP" ) or die("skip\n"); ?>
+--INI--
+mbstring.internal_encoding=pass
+--FILE--
+<?php
+ setlocale( LC_CTYPE, "ja_JP.EUC-JP" );
+ var_dump(htmlentities("\xa1\xa2\xa1\xa3\xa1\xa4", ENT_QUOTES, ''));
+?>
+--EXPECT--
+string(6) "¡¢¡£¡¤"
--- /dev/null
+--TEST--
+htmlentities() test 5 (mbstring / cp1252)
+--INI--
+output_handler=
+mbstring.internal_encoding=cp1252
+--SKIPIF--
+<?php function_exists('mb_internal_encoding') or die("skip\n"); ?>
+--FILE--
+<?php
+ print mb_internal_encoding()."\n";
+ var_dump(htmlentities("\x82\x86\x99\x9f", ENT_QUOTES, ''));
+ var_dump(htmlentities("\x80\xa2\xa3\xa4\xa5", ENT_QUOTES, ''));
+?>
+--EXPECT--
+Windows-1252
+string(28) "‚†™Ÿ"
+string(32) "€¢£¤¥"
--- /dev/null
+--TEST--
+htmlentities() test 6 (mbstring / ISO-8859-15)
+--INI--
+output_handler=
+mbstring.internal_encoding=ISO-8859-15
+--SKIPIF--
+<?php function_exists('mb_internal_encoding') or die("skip\n"); ?>
+--FILE--
+<?php
+ print mb_internal_encoding()."\n";
+ var_dump(htmlentities("\xbc\xbd\xbe", ENT_QUOTES, ''));
+?>
+--EXPECT--
+ISO-8859-15
+string(20) "ŒœŸ"
--- /dev/null
+--TEST--
+htmlentities() test 7 (mbstring / ISO-8859-1)
+--INI--
+output_handler=
+mbstring.internal_encoding=ISO-8859-1
+--SKIPIF--
+<?php function_exists('mb_internal_encoding') or die("skip\n"); ?>
+--FILE--
+<?php
+ print mb_internal_encoding()."\n";
+ var_dump(htmlentities("\xe4\xf6\xfc", ENT_QUOTES, ''));
+?>
+--EXPECT--
+ISO-8859-1
+string(18) "äöü"
--- /dev/null
+--TEST--
+htmlentities() test 8 (mbstring / EUC-JP)
+--INI--
+output_handler=
+mbstring.internal_encoding=EUC-JP
+--SKIPIF--
+<?php function_exists('mb_internal_encoding') or die("skip\n"); ?>
+--FILE--
+<?php
+ print mb_internal_encoding()."\n";
+ var_dump(htmlentities("\xa1\xa2\xa1\xa3\xa1\xa4", ENT_QUOTES, ''));
+?>
+--EXPECT--
+EUC-JP
+string(6) "¡¢¡£¡¤"
--- /dev/null
+--TEST--
+htmlentities() test 9 (mbstring / Shift_JIS)
+--INI--
+output_handler=
+mbstring.internal_encoding=Shift_JIS
+--SKIPIF--
+<?php function_exists('mb_internal_encoding') or die("skip\n"); ?>
+--FILE--
+<?php
+ print mb_internal_encoding()."\n";
+ var_dump(htmlentities("\x81\x41\x81\x42\x81\x43", ENT_QUOTES, ''));
+?>
+--EXPECT--
+SJIS
+string(6) "\81A\81B\81C"