使用chr($i)可以顺利的打印出ASCII,但是,当$i>=19968(汉字的Unicode的起始值4E00的十进制)后,发现没法打印出汉字。

如:

虽然有其他方法,如:

//代码2

$character = html_entity_decode('一', ENT_QUOTES, 'UTF-8');

但为什么代码1没法打印出汉字?

回复内容:

使用chr($i)可以顺利的打印出ASCII,但是,当$i>=19968(汉字的Unicode的起始值4E00的十进制)后,发现没法打印出汉字。

如:

虽然有其他方法,如:

//代码2

$character = html_entity_decode('一', ENT_QUOTES, 'UTF-8');

但为什么代码1没法打印出汉字?

ASCII根本就不包含汉字,

包含汉字的是GB2312-80,GBK,Big5,unicode

汉字是多字节,你用ord就会发现,只会返还汉字的首字节。

其实chr函数的源代码就在 /ext/standard/string.c

代码如下

PHP_FUNCTION(chr)

{

long c;

char temp[2];

if (ZEND_NUM_ARGS() != 1) {

WRONG_PARAM_COUNT;

}

if (zend_parse_parameters_ex(ZEND_PARSE_PARAMS_QUIET, ZEND_NUM_ARGS() TSRMLS_CC, "l", &c) == FAILURE) {

c = 0;

}

temp[0] = (char)c;

temp[1] = '\0';

RETURN_STRINGL(temp, 1, 1);

}

可以看到的是,就是C语言的字符强制转换。

声明:本文原创发布php中文网,转载请注明出处,感谢您的尊重!如有疑问,请联系admin@php.cn处理

相关标签:php

html调用chr,PHP: 使用chr打印汉字相关推荐

  1. ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(.. 以及oracle中使用chr

    chr(9) tab空格       chr(10) 换行      chr(13) 回车        Chr(13)&chr(10) 回车换行       chr(32) 空格符      ...

  2. ABAP 如何判断调用smartforms时是进行打印还是预览

    原文地址:ABAP 如何判断调用smartforms时是进行打印还是预览作者:Lemon SAP在调用smartforms 时,在打印时有直接打印和预览两个选择,有时候需要区别用户的操作是打印还是预览 ...

  3. ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)、chr(..

    chr(9) tab空格       chr(10) 换行      chr(13) 回车        Chr(13)&chr(10) 回车换行       chr(32) 空格符      ...

  4. NSArray打印汉字的方法

    (1) NSArray打印汉字 通过重载NSArray的- (NSString *)descriptionWithLocale:(id)locale方法 方法体例如以下: //依据设置的locale ...

  5. Java调用不同的打印机实现打印不同小票

    Java调用不同的打印机实现打印不同小票 前言,在餐馆中,为了满足商家的需要,当顾客下订单后,前台打印机需要打印出订单的信息给顾客,后台打印机需要打印出菜品分单给厨师.怎么样让一台计算机来控制多台打印 ...

  6. 【算法】实现打印汉字拼音首字母

    [算法]实现打印汉字拼音首字母 AC记录 原题地址:[1125: 拼音字母] 参考文章: [CSDN]宇宙最强皮皮虾<Java中文转GBK码> 原题摘要: 题目描述 在很多软件中,输入拼音 ...

  7. 调用斑马打印机实现标签打印

    Java 调用斑马打印机实现标签打印 代码实现 最近的一个项目中,需要实现java调用斑马的打印机实现标签打印功能,百度了一些资源,找了不少人搞了一台快报废的斑马105SL 300DPI打印机,分分钟 ...

  8. ASCII码对应表chr(9)、chr(10)、chr(13)、chr(32)、chr(34)、chr(39)

    chr(9) tab空格       chr(10) 换行      chr(13) 回车        Chr(13)&chr(10) 回车换行       chr(32) 空格符      ...

  9. python打印汉字报错_python中文输出报错解决方案(实例教程)

    对于刚刚开始接触python这门语言的人来说,可能会对于如何使用这门语言来进行编程会存在有一定的疑惑.如何使用中文来进行程序的编写,会不会与英文的编写有不一样的地方?今天我们就来看一下在python中 ...

  10. 调用SMT.ZEBRA.dll斑马打印机库文件,打印条形码。

    调用SMT.ZEBRA.dll斑马打印机库文件,打印条形码. 效果图: 准备:1. 斑马打印机 型号GT820. 2. 斑马打印机驱动. 3. 库文件SMT.ZEBRA.dll 和 SMT.ZEBRA ...

最新文章

  1. iOS开发之性能优化
  2. 刚安装的python如何使用-Python requests的安装与简单运用
  3. JavaScript 技术篇-js自动转换类型,自动转换为字符串,js避免自动转换的坑
  4. 知道python不_为什么自学Python看不进去?
  5. linux 服务配置
  6. JAVA经过两轮面试还能被刷吗_云从科技JAVA开发工程师面试:视频进行面试,前两轮技术面试 - 职朋职业圈...
  7. 关于扫描的一个比较好的网站
  8. P2053-修车【网络流,费用流】
  9. Thread类学习(一)
  10. nodejs中处理回调函数的异常
  11. Nginx服务架构初探(七):nginx邮件服务
  12. 电子科大计算机2014级,电子科大-计算机-操作系统实验报告-2014级.docx
  13. React Component Lifecycle(生命周期)
  14. 【mysql】复制一张表的数据到另一张表
  15. UVA12235 - Help Bubu
  16. yapi 权限_YAPI安装方法
  17. 2、MySQL数据库-表的修改
  18. html页面和手机比例一致 一比一自适应 Mixed Content: The page at ‘xxx‘ was loaded over HTTPS, but requested an insec
  19. python计算派的值_使用 Python 计算 π 值
  20. Java 工程师如何得到一个好 Offer

热门文章

  1. cnn卷积神经网络_卷积神经网络(CNN)原理及应用
  2. 奖客富翁系统python_作业 2018-12-28 20.1 奖客富翁
  3. 看看别人家 SpringBoot 的全局异常处理,多么优雅....
  4. IDEA使用GsonFormat完成JSON和JavaBean之间的转换
  5. 面试官问的hibernate和mybatis常见面试题
  6. 蓝桥杯java第五届决赛第三题--格子放鸡蛋
  7. 信息系统项目管理知识--
  8. centos7 ifconfig命令找不到_centos7+mysql+gunicorn+flask项目部署
  9. (数据结构与算法)使用栈来实现综合计算器
  10. 一个对象的内存图及运行流程和3个对象的内存图的运行流程