tave / forceutf8
此包最新版本(v1.0.0)没有提供许可证信息。
PHP 类编码,包含流行的 Encoding::toUTF8() 函数 --以前称为 forceUTF8()-- 用于修复混合编码的字符串。
此包的官方仓库似乎已消失,因此包已被冻结。
v1.0.0
2014-09-12 16:31 UTC
Requires
- php: >=5.2.0
This package is not auto-updated.
Last update: 2019-03-08 21:41:20 UTC
README
PHP 类编码,包含流行的 \ForceUTF8\Encoding::toUTF8() 函数 --以前称为 forceUTF8()-- 用于修复混合编码的字符串。
描述
如果您对已经是 UTF8 编码的字符串应用 PHP 函数 utf8_encode(),它将返回一个乱码的 UTF8 字符串。
此类解决了此问题,并提供了一个名为 Encoding::toUTF8() 的便捷静态函数。
您不需要知道您的字符串的编码是什么。它可以是以太1(iso 8859-1)、Windows-1252 或 UTF8,或者字符串可以是它们的混合。Encoding::toUTF8() 将将所有内容转换为 UTF8。
有时您必须处理编码不可靠的服务,可能将 UTF8 和 Latin1 混合在同一字符串中。
更新
我包含了一个名为 Encoding::fixUTF8() 的另一个函数,该函数将修复看起来混乱的双(或多个)编码 UTF8 字符串。
用法
$utf8_string = \ForceUTF8\Encoding::toUTF8($utf8_or_latin1_or_mixed_string);
$latin1_string = Encoding::toLatin1($utf8_or_latin1_or_mixed_string);
also
$utf8_string = \ForceUTF8\Encoding::fixUTF8($garbled_utf8_string);
示例
echo \ForceUTF8\Encoding::fixUTF8("Fédération Camerounaise de Football");
echo \ForceUTF8\Encoding::fixUTF8("FÃédÃération Camerounaise de Football");
echo \ForceUTF8\Encoding::fixUTF8("FÃÃédÃÃération Camerounaise de Football");
echo \ForceUTF8\Encoding::fixUTF8("FÃÃÃédÃÃÃération Camerounaise de Football");
将输出
Fédération Camerounaise de Football
Fédération Camerounaise de Football
Fédération Camerounaise de Football
Fédération Camerounaise de Football
Composer 安装
除非我收到这样的请求,否则我不想将其提交到 Packagist.org。
您需要将仓库和 require 语句添加到 composer.json 中,如下所示
{ "repositories": [ { "type": "vcs", "url": "https://github.com/jpirkey/forceutf8" } ], "require": { "jpirkey/forceutf8" : "master" }, }