diff options
Diffstat (limited to 'vendor/smarty/smarty/docs/programmers/charset.md')
-rw-r--r-- | vendor/smarty/smarty/docs/programmers/charset.md | 44 |
1 files changed, 44 insertions, 0 deletions
diff --git a/vendor/smarty/smarty/docs/programmers/charset.md b/vendor/smarty/smarty/docs/programmers/charset.md new file mode 100644 index 000000000..9dedf4dcd --- /dev/null +++ b/vendor/smarty/smarty/docs/programmers/charset.md @@ -0,0 +1,44 @@ +Charset Encoding {#charset} +================ + +Charset Encoding {#charset.encoding} +================ + +There are a variety of encodings for textual data, ISO-8859-1 (Latin1) +and UTF-8 being the most popular. Unless you change `Smarty::$_CHARSET`, +Smarty recognizes `UTF-8` as the internal charset if +[Multibyte String](https://www.php.net/mbstring) is available, +`ISO-8859-1` if not. + +> **Note** +> +> `ISO-8859-1` has been PHP\'s default internal charset since the +> beginning. Unicode has been evolving since 1991. Since then it has +> become the one charset to conquer them all, as it is capable of +> encoding most of the known characters even across different character +> systems (latin, cyrillic, japanese, ...). `UTF-8` is unicode\'s most +> used encoding, as it allows referencing the thousands of character +> with the smallest size overhead possible. +> +> Since unicode and UTF-8 are very wide spread nowadays, their use is +> strongly encouraged. + +> **Note** +> +> Smarty\'s internals and core plugins are truly UTF-8 compatible since +> Smarty 3.1. To achieve unicode compatibility, the [Multibyte +> String](https://www.php.net/mbstring) PECL is required. Unless your PHP +> environment offers this package, Smarty will not be able to offer +> full-scale UTF-8 compatibility. + + + // use japanese character encoding + if (function_exists('mb_internal_charset')) { + mb_internal_charset('EUC-JP'); + } + + require_once 'libs/Smarty.class.php'; + Smarty::$_CHARSET = 'EUC-JP'; + $smarty = new Smarty(); + + |