3
|
Keith Palmer Jr. · 技术社区 · 15 年前 |
![]() |
1
10
第一个问题:这取决于字符串中的具体内容。 在php中(无论如何,最多可达php5),字符串只是字节序列。没有与它们相关联的隐含或显式字符集;这是程序员必须跟踪的。因此,如果只在引号之间放置有效的utf-8字节(如果文件本身编码为utf-8,则相当容易),那么字符串将是utf-8,并且可以安全地对其使用mb_strlen()。 另外,如果您使用的是mbstring函数,那么您需要显式地告诉它您的字符串是什么字符集,或者使用 mbstring.internal_encoding 或者作为任何mbstring函数的最后一个参数。 第二个问题:是的,有警告。
两个独立有效的UTF-8字符串可以安全地按字节连接(就像与PHP的
|
![]() |
2
3
如果源代码是UTF-8,那么字符串是UTF-8,如果不是,则不是。由于示例字符串仅为英语,因此它是有效的UTF-8。 PHP本身并不了解字符集。如果您将内容传递给mb*函数,它会将其视为一个utf-8字符串。 不管怎样,串联都必须工作良好,如果我理解UTF-8,请确保 二者都 字符串是utf-8,否则将得到 奇怪的 结果是字符串。 |
![]() |
3
2
在执行任何一个命令之前,请确保将默认的\u charset指令设置为utf-8。 直接修改php.ini或在运行时使用
|
![]() |
Jacco · 未能格式化我的日期以在php中正确工作 1 年前 |
![]() |
jay ram · 如何在URL核心php中从API获取JSON? 1 年前 |
|
Ishwarya A · php电子表格在浏览器中显示多张excel 1 年前 |