????JFIF??x?x????'
| Server IP : 79.136.114.73 / Your IP : 216.73.216.191 Web Server : Apache/2.4.7 (Ubuntu) PHP/5.5.9-1ubuntu4.29 OpenSSL/1.0.1f System : Linux b8009 3.13.0-170-generic #220-Ubuntu SMP Thu May 9 12:40:49 UTC 2019 x86_64 User : www-data ( 33) PHP Version : 5.5.9-1ubuntu4.29 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority, MySQL : ON | cURL : ON | WGET : ON | Perl : ON | Python : ON | Sudo : ON | Pkexec : ON Directory : /proc/self/root/home/b8009/php-5.6.22/ext/standard/tests/strings/ |
Upload File : |
--TEST--
default_charset and htmlentities/htmlspecialchars/html_entity_decode
--INI--
default_charset=UTF-8
internal_encoding=
input_encoding=
output_encoding=
--FILE--
<?php
echo "*** Default php.ini value ***\n";
var_dump(ini_get('default_charset'),
ini_get('internal_encoding'),
ini_get('input_encoding'),
ini_get('output_encoding')
);
echo "*** Runtime change of default_charset ***\n";
var_dump(ini_set('default_charset', 'cp1252'));
echo "*** Test with updated default_charset ***\n";
var_dump(ini_get('default_charset'),
ini_get('internal_encoding'),
ini_get('input_encoding'),
ini_get('output_encoding')
);
var_dump(htmlentities("\xA3", ENT_HTML5));
var_dump(htmlentities("\xA3", ENT_HTML5, 'cp1252'));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5)));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5, 'cp1252')));
// Set internal_encoding to empty and try again
echo "*** Change internal_encoding to empty ***\n";
var_dump(ini_set('internal_encoding', ''));
var_dump(ini_get('default_charset'),
ini_get('internal_encoding'),
ini_get('input_encoding'),
ini_get('output_encoding')
);
var_dump(htmlentities("\xA3", ENT_HTML5));
var_dump(htmlentities("\xA3", ENT_HTML5, 'cp1252'));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5)));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5, 'cp1252')));
echo "*** Update input/output_encoding ***\n";
var_dump(ini_set('input_encoding', 'ISO-8859-1'));
var_dump(ini_set('output_encoding', 'ISO-8859-1'));
var_dump(ini_get('default_charset'),
ini_get('internal_encoding'),
ini_get('input_encoding'),
ini_get('output_encoding')
);
// Should not be affected
var_dump(htmlentities("\xA3", ENT_HTML5));
var_dump(htmlentities("\xA3", ENT_HTML5, 'cp1252'));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5)));
var_dump(bin2hex(html_entity_decode("£", ENT_HTML5, 'cp1252')));
echo "Done\n";
?>
--EXPECT--
*** Default php.ini value ***
string(5) "UTF-8"
string(0) ""
string(0) ""
string(0) ""
*** Runtime change of default_charset ***
string(5) "UTF-8"
*** Test with updated default_charset ***
string(6) "cp1252"
string(0) ""
string(0) ""
string(0) ""
string(7) "£"
string(7) "£"
string(2) "a3"
string(2) "a3"
*** Change internal_encoding to empty ***
string(0) ""
string(6) "cp1252"
string(0) ""
string(0) ""
string(0) ""
string(7) "£"
string(7) "£"
string(2) "a3"
string(2) "a3"
*** Update input/output_encoding ***
string(0) ""
string(0) ""
string(6) "cp1252"
string(0) ""
string(10) "ISO-8859-1"
string(10) "ISO-8859-1"
string(7) "£"
string(7) "£"
string(2) "a3"
string(2) "a3"
Done