转换复杂字符
访问整个Unicode字符集的能力为渲染复杂的字符提供了许多新的可能性,特别是拉丁字母以外的字符。
如何做...
1.有些语言的读法是从右到左,而不是从左到右。例如希伯来语和阿拉伯语。在这个例子中,我们向您展示如何使用U+202E
Unicode字符来呈现从右到左覆盖的反向文本。下面这行代码打印了txet desreveR
。
完成后别忘了调用从左到右的覆盖字符U+202D
!
2. 另一个考虑因素是使用合成字符。其中一个例子是ñ
(字母n
,上面有一个tilde ~
)。这在诸如mañana
(西班牙语中的早晨或明天,取决于上下文)这样的单词中使用。还有一个可用的组成字符,由Unicode代码U+00F1
表示。下面是其使用的一个例子,与mañana
相呼应。
3. 然而,这可能会潜在地影响搜索的可能性。想象一下,你的客户没有一个带有这个组成字符的键盘。如果他们开始输入man
试图搜索mañana
,他们将不成功。
4. 使用完整的Unicode集提供了其他的可能性。你可以不使用组成的字符,而是使用原始字母n
与Unicode组合码的组合,将浮动的tilde置于字母之上。在这个echo
命令中,输出的结果和之前一样。只是组成单词的方式不同。
5. 对于重音也可以有类似的应用。考虑一下法语单词élève
(学生)。您可以使用合成字符来呈现它,或者使用组合代码将重音浮在字母上方。考虑以下两个例子。这两个例子产生了相同的输出,但呈现方式不同。
如何运行...
创建一个名为chap_08_control_and_combining_unicode.php
的文件。确保包含元标签,向浏览器发出UTF-8字符编码的信号。
接下来,设置基本的PHP和HTML来显示前面讨论的例子。
下面是浏览器的输出。
最后更新于