草庐IT

utf8Lines

全部标签

PHP多字节替代UTF8

我一直在寻找字符串操作函数的UTF8安全替代方案。我发现了很多不同的意见和建议。我想问一下以下函数是否会导致UTF-8出现问题,如果会,我应该使用什么来代替。我知道PHP手册中的mb_前缀函数列表,但并不是我正在使用的所有函数。函数有:内爆、爆炸、str_replace、preg_match、preg_replace谢谢 最佳答案 explode只是寻找相同的字节序列并在该点分隔字符串。由于UTF-8与ASCII安全地向后兼容,因此无需担心,它会正常工作。implode只是将字符串组合在一起,由于UTF-8的特性,它也能正常工作。s

php - UTF8 到 CP1255 转换

我正在尝试将UTF-8字符串转换为CP1255(希伯来语)我试过运行以下命令(我正在使用detect_encoding因为我的一些输入不是UTF-8):foreach($paramas$key=>$value){$newval=iconv(mb_detect_encoding($value),"cp1255",$value);$querystr.=$key."=".$newval."&";}不管怎样,结果是所有的希伯来字符都返回漂亮的�符号,所有其他(英文/数字)都符合预期并保持原样。我怎样才能正确地做到这一点? 最佳答案 我找到了

PHP utf8问题

我在将包含挪威字符的数组与utf8字符进行比较时遇到了一些问题。除了特殊的挪威字符(æ、ø、å)之外的所有字符都可以正常工作。functionisNorwegianChar($Char){$aNorwegianChars=array('a','A','b','B','c','C','d','D','e','E','f','F','g','G','h','H','i','I','j','J','k','K','l','L','m','M','n','N','o','O','p','P','q','Q','r','R','s','S','t','T','u','U','v','V','w'

php - 如何在我的 utf-8 编码页面上正确显示 utf 编码字符?

我正在检索电子邮件,我的一些电子邮件有utf编码的文本。然而,即使我的页面被编码为utf8-在某些地方,当我尝试输出utf文本时,我会得到有趣的字符,例如:=?utf-8?B?Rlc6INqp24zYpyDYotm+INin2LMg2YXYs9qp2LHYp9uB2bkg2qnbjCDZhtmC?==?utf-8?B?2YQg2qnYsdiz2qnYqtuSINuB24zaug==?=而在同一页面的其他区域显示正常。这是怎么回事? 最佳答案 这不是“有趣的字符”,它们是合法的ASCII字符。只是该字符串是为传输而进行的MIME编码,

php - 正则表达式匹配任何 UTF 字符,不包括标点符号

我正在PHP中准备一个函数来自动转换字符串以用作URL(*.html)中的文件名。虽然应该使用ASCII以确保安全,但出于SEO的需要,我需要允许文件名使用任何语言,但我不希望它包含破折号(-)和下划线(_)、字符以外的标点符号像*%$#@"'不应该被允许。空格应转换为破折号。我认为使用Regex将是最简单的方法,但我不确定如何处理UTF8字符串。我的ASCII函数如下所示:functionconvertToPath($string){$string=strtolower(trim($string));$string=preg_replace('/[^a-z0-9-]/','-',$s

php - utf8 到 ISO-8859-1 无法通过 Curl 正确转换某些字符

我有一个采用UTF8编码字符的应用程序,需要使用ISO-8859-1编码通过curl将它们作为xml的一部分发送。这是我的测试代码:header('Content-Type:text/plain;charset=IS0-8859-1');$message='§°"@#€%&/()=+`´^¨*-_:.;,';echomb_convert_encoding($message,'ISO-8859-1','UTF-8');//buildxmltopost$content=''.CUSTOMER_ID.''.PASSWORD_ID.'+12345678900';$posturl=MT_URL;

php - 拉维尔 4 : Fatal error: Class 'Patchwork\Utf8\Bootup' not found in autoload. PHP

我将"cviebrock/image-validator":"1.0.*"添加到composer.json的require部分。之后,我运行了composerupdate,我收到了这个fatalerror。:::错误:::Fatalerror:Class'Patchwork\Utf8\Bootup'notfoundinF:\xampp\htdocs\project\bootstrap\autoload.phponline46Scriptphpartisanclear-compiledhandlingthepost-update-cmdeventreturnedwithanerror[R

php - 如何在 PHP 中检查字符串在 UTF8 中是否只有国际字母和空格?

在Python中,我可以将它转换为Unicode并执行'(?u)^[\w]+$'正则表达式搜索,但PHP似乎不理解国际\w,或者是吗? 最佳答案 虽然我自己没有测试过,看http://us3.php.net/manual/en/reference.pcre.pattern.syntax.php建议如下:'/^[\p{L}]+$/u'会起作用-\p{L}将匹配任何unicode字母。此外,您显然可以在没有大括号的情况下编写此代码-'/^[\pL]+$/u'。 关于php-如何在PHP中检查

php - KOI8-R转UTF8

我需要将KOI8-R编码的字符串转换为纯UTF8 最佳答案 您可以使用mb_convert_encoding:$output=mb_convert_encoding($input,'UTF-8','KOI8-R'); 关于php-KOI8-R转UTF8,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4199247/

php utf8_encode - 字符前面加上\u

我有一个从数据库中获取的ISO字符串,当我对它进行utf8_encode时,我得到的是\u00f6而不是Ö。这混淆了ajaxes这个PHP脚本的javascript/html。为什么会有\u00f6而不是Ö?如何获得Ö?编辑:好的,我做了一些更多的实验,结果证明这是由utf8_encode和json_encode的组合引起的。尽管如果我根本不使用utf8_encode,该值在json中将为null。json_encode(array("city"=>utf8_encode("göteborg"))) 最佳答案 utf8_encode