Php 非utf-8字符(非代码点)的示例是什么?

Php 非utf-8字符(非代码点)的示例是什么?,php,encoding,utf-8,Php,Encoding,Utf 8,我正在测试我的代码,以确保它只接受utf-8字符。用户可以发送一个名称作为输入,我想确保这个名称不是utf8以外的任何名称 我知道你可以构建一个二进制格式的非utf8字符,但据我所知,用户不能以二进制格式发送输入。用户可以键入utf-8不支持的字符的示例是什么 顺便说一句,我正在用php编写代码,默认编码是utf-8。如果您正在寻找要测试的字符串,下面是一些: İnançEsasları 你好,沃尔德 皮恩 一个检查字符串中是否包含utf8的简单函数: if (mb_strlen($var,

我正在测试我的代码,以确保它只接受utf-8字符。用户可以发送一个名称作为输入,我想确保这个名称不是utf8以外的任何名称

我知道你可以构建一个二进制格式的非utf8字符,但据我所知,用户不能以二进制格式发送输入。用户可以键入utf-8不支持的字符的示例是什么


顺便说一句,我正在用php编写代码,默认编码是utf-8。

如果您正在寻找要测试的字符串,下面是一些:

  • İnançEsasları
  • 你好,沃尔德
  • 皮恩
一个检查字符串中是否包含utf8的简单函数:

if (mb_strlen($var, 'UTF-8') != strlen($var)) {
  // handle when not UTF-8
}

您可以找到有关utf-8的更多信息:任何具有高位集的单个字节,例如
0xF?
都将是无效的utf8。@MarcB如果将其作为输入传递,输入是否会将其中的每一个都计算为不同的字符?就像把0xF看作“0”、“x”和“F”的三个字符一样,这只是字节的一种表示法。在书写中如何表示一个字节?他指的是
0xF0
0xFF
范围内的任何独立字节(没有以下匹配序列)。如果您正在编写PHP,
$str=“\xF0”
将生成这样的字节。