草庐IT

UTF8Encoding

全部标签

php - pdftk fill_form utf8问题

这个问题在这里已经有了答案:关闭9年前。PossibleDuplicate:FlattenFDF/XFDFformstoPDFinPHPwithutf-8characters我正在使用pdftk用来自fdf的数据填充模板pdf。数据具有正确的utf-8字符,但是当我使用fill_form时,生成的pdf文件存在格式错误。(我不使用flatten)我在处理š、đ、č、ć、ž.谢谢。更新我的解决方案最后,我放弃了pdftk,我最终使用了fpfd,更准确地说,我使用了this脚本。我在这里也有几个问题,与pdf文件有关。但是我使用pdftk修复了那个pdf(正如脚本本身所建议的那样),最后它

PHP 函数 mb_detect_encoding 严格模式

在函数中mb_detect_encoding严格模式有一个参数。在第一个最赞的评论中:这是真的,是的。但是谁能给我一个解释,这是为什么? 最佳答案 此答案中的所有内容均基于我对代码here的阅读和here.我没有写它,我没有用调试器单步调试它,这只是我的解释。似乎意图是针对严格模式检查字符串作为一个整体是否对编码有效,而非严格模式将允许可能的子序列是有效字符串的一部分。例如,如果字符串以多字节字符的第一个字节结尾,它在严格模式下将不匹配,但在非严格模式下仍符合UTF-8标准模式。但是似乎存在一个错误*,即在非严格模式下,在某些情况下

php - mb_convert_encoding 问题

我对PHP函数mb_detect_encoding有一些疑问。我无法将其转换为ISO-8859-1。有帮助吗?代码:$str="åäö";$encoding=mb_detect_encoding($str);echo$encoding;$encoding=mb_detect_encoding(mb_convert_encoding($str,"ISO-8859-1"));echo$encoding;输出:UTF-8UTF-8已更新,解决方案:我将mb_detect_order更新为array('UTF-8','ISO-8859-1')并且它起作用了。 最佳答

php - 设置语言环境(LC_CTYPE, "de_DE.UTF8")或设置语言环境(LC_CTYPE, "de_DE.UTF-8")?

setlocale(LC_CTYPE,"de_DE.UTF8")或setlocale(LC_CTYPE,"de_DE.UTF-8")带破折号还是不带破折号?我在答案中都看到了。 最佳答案 我会运行locale-a并使用它输出的字符串。在OSX10.9上,我得到de_DE.UTF-8。在Debian6上,我得到de_DE.utf8。dpkg-reconfigurelocales另一方面使用de_DE.UTF-8。最安全的方法可能是检查setlocale的返回值,如果失败则尝试不同的变体。也就是说,所有版本通常都应该可以工作:带或不带破

php - FallbackResource 导致 net::ERR_INCOMPLETE_CHUNKED_ENCODING

当我使用仅包含这一行的.htaccess时:FallbackResourceindex.php我只在Chrome上遇到这个错误:net::ERR_INCOMPLETE_CHUNKED_ENCODING只有在访问.htaccess所在的根目录时才会出现该错误。IE,如果.htacess位于www.mysite.org/admin中,则仅当我在导航栏中键入确切的URL时才会出现错误。如果我去www.mysite.org/admin/index.php或www.mysite.org/admin/some-user-friendly-url有没有错误。这个错误真的很烦人,因为它会延迟页面加载几

php - 为什么调用 mb_convert_encoding 来清理文本?

引用this(excellent)answer.他指出,在PHP中转义输入的最佳解决方案是调用mb_convert_encoding其次是html_entities.但为什么要使用相同的传入和传出参数(UTF8)调用mb_convert_encoding?原答案摘录:Evenifyouusehtmlspecialchars($string)outsideofHTMLtags,youarestillvulnerabletomulti-bytecharsetattackvectors.Themosteffectiveyoucanbeistousetheacombinationofmb_co

PHP utf8_encode() 将空格转换为不间断空格

关闭。这个问题需要debuggingdetails.它目前不接受答案。编辑问题以包含desiredbehavior,aspecificproblemorerror,andtheshortestcodenecessarytoreproducetheproblem.这将有助于其他人回答问题。关闭2年前。Improvethisquestion非常简单:utf8_encode($string)将常规空格替换为不间断空格("\u00a0")。我尝试使用str_replace过滤结果:str_replace("\u00a0","",utf8_encode($string))但这并没有解决问题。编辑

php - json_encode 从 MSSQL-SELECT 生成 JSON_ERROR_UTF8

我对mssql的数据库查询有一个恼人的问题。如果结果包含特殊字符,例如德语“ä”,我将无法使用json_encode将结果正确获取为json。json_last_error返回5等于JSON_ERROR_UTF8。我猜数据库不会返回编码为UTF-8的值。数据库集合是*Latin1_General_CI_AS*,受影响的列是varchars。phpmssql.charset配置无效。我读到mysql用户可以使用mysql_query('SETCHARACTERSETutf8');正确编码返回值。我该怎么做才能正确获取mssql的值?提示-我无法更改数据库中的任何内容。

php - mb_detect_encoding 将 ASCII 检测为 UTF-8?

我正在尝试自动将导入的IPTC元数据从图像转换为UTF-8,以便基于PHPmb_函数存储在数据库中。目前看起来是这样的:$val=mb_convert_encoding($val,'UTF-8',mb_detect_encoding($val));但是,当mb_detect_encoding()被提供一个ASCII字符串(Latin1字段中192-255的特殊字符)时,它会将其检测为UTF-8,因此在下面的尝试中将所有内容都转换为为了正确使用UTF-8,所有特殊字符都被删除。我尝试通过查找Latin1值来编写自己的方法,如果没有出现,我将继续让mb_detect_encoding决定它

php - 在 PHP : (*UTF8) Works on Windows but not Linux 中使用 preg_match 匹配 UTF 字符

我有一个简单的正则表达式来检查用户名:preg_match('/(*UTF8)^[[:alnum:]]([[:alnum:]]|[_.-])+$/i',$username);在本地测试中(使用WAMP的Windows7),这将允许用户名使用UTF字符(例如é或ñ)。但是,当我在实际托管网站的服务器上进行测试时,我收到以下警告:Warning:preg_match()[function.preg-match]:Compilationfailed:(*VERB)notrecognizedatoffset5in/home/sites/vgmusic.com/test/Core/Impl/Fo