chr

  • (PHP 4, PHP 5, PHP 7)
  • chr — Return a specific character
  • chr — 返回指定的字符

Description

string chr ( int $ascii )
//Returns a one-character string containing the character specified by ascii.
//返回相对应于 ascii 所指定的单个字符。
//This function complements ord().
//此函数与 ord() 是互补的。

Parameters

ascii

  • The extended ASCII code.

  • Ascii 码。

  • Values outside the valid range (0..255) will be bitwise and'ed with 255, which is equivalent to the following algorithm:

while ($ascii < 0) {
$ascii += 256;
}
$ascii %= 256;

Return Values

  • Returns the specified character.
  • 返回规定的字符。

Examples

<?php
/**
* Created by PhpStorm.
* User: zhangrongxiang
* Date: 2018/2/15
* Time: 下午6:56
*/ for ( $i = 65; $i < 127; $i ++ ) {
echo chr( $i ) . ' ';
if ( $i % 10 == 0 ) {
echo PHP_EOL;
}
}
/*
* A B C D E F
* G H I J K L M N O P
* Q R S T U V W X Y Z
* [ \ ] ^ _ ` a b c d
* e f g h i j k l m n
* o p q r s t u v w x
* y z { | } ~
*/
echo PHP_EOL; function unichr( $dec ) {
if ( $dec < 128 ) {
$utf = chr( $dec );
} else if ( $dec < 2048 ) {
$utf = chr( 192 + ( ( $dec - ( $dec % 64 ) ) / 64 ) );
$utf .= chr( 128 + ( $dec % 64 ) );
} else {
$utf = chr( 224 + ( ( $dec - ( $dec % 4096 ) ) / 4096 ) );
$utf .= chr( 128 + ( ( ( $dec % 4096 ) - ( $dec % 64 ) ) / 64 ) );
$utf .= chr( 128 + ( $dec % 64 ) );
} return $utf;
} //中
echo unichr( 20013 ) . PHP_EOL;
//A
echo chr( 321 ) . PHP_EOL;//A 256 + 65 = 321 function genPass( $len = 8 ) {
$passwd = '';
for ( $i = 0; $i <= $len; $i ++ ) {
$passwd = sprintf( '%s%c', isset( $passwd ) ? $passwd : null, rand( 48, 122 ) );
} return $passwd;
} //vuTR<oUn;
echo genPass( 8 ) . PHP_EOL; function unichr2( $dec ) {
if ( $dec < 0x80 ) {
$utf = chr( $dec );
} else if ( $dec < 0x0800 ) {
$utf = chr( 0xC0 + ( $dec >> 6 ) );
$utf .= chr( 0x80 + ( $dec & 0x3f ) );
} else if ( $dec < 0x010000 ) {
$utf = chr( 0xE0 + ( $dec >> 12 ) );
$utf .= chr( 0x80 + ( ( $dec >> 6 ) & 0x3f ) );
$utf .= chr( 0x80 + ( $dec & 0x3f ) );
} else if ( $dec < 0x200000 ) {
$utf = chr( 0xF0 + ( $dec >> 18 ) );
$utf .= chr( 0x80 + ( ( $dec >> 12 ) & 0x3f ) );
$utf .= chr( 0x80 + ( ( $dec >> 6 ) & 0x3f ) );
$utf .= chr( 0x80 + ( $dec & 0x3f ) );
} else {
die( "UTF-8 character size is more than 4 bytes" );
} return $utf;
} function unichr3( $u ) {
return mb_convert_encoding( '&#' . intval( $u ) . ';', 'UTF-8', 'HTML-ENTITIES' );
} echo unichr( 0x263A ) . PHP_EOL;//☺
echo unichr2( 0x263A ) . PHP_EOL;//☺
echo unichr3( 0x263A ) . PHP_EOL;//☺
echo unichr( 0x263B ) . PHP_EOL;//☻
echo unichr2( 0x263B ) . PHP_EOL;//☻
echo unichr( 20013 ) . PHP_EOL;//中
echo unichr2( 20013 ) . PHP_EOL;//中
echo unichr3( 20013 ) . PHP_EOL;//中

See

All rights reserved

PHP之string之chr()函数使用的更多相关文章

  1. php ord和chr函数

    直接上代码 //通过ord()函数获取字符的ASCII码值,如果返回值大于 127则表示为中文字符的一半,再获取后一半组合成一个完整字符 $string = "hello不要迷恋哥world ...

  2. [Oracle]Oracle之Chr函数返回

    Chr函数 返回:返回 String,其中包含有与指定的字符代码相关的字符. chr('39')是单引号 Chr("0") 为0的字符 Chr("1") Chr ...

  3. python中的ord,chr函数

    chr().unichr()和ord() chr()函数用一个范围在range(256)内的(就是0-255)整数作参数,返回一个对应的字符.unichr()跟它一样,只不过返回的是Unicode字符 ...

  4. Oracle 学习之:ASCII,CHR函数的作用和用法

    对于ASCII以及CHR函数的用法,Oracle给出的解释是: ASCII(x)gets the ASCII value of the character X, CHR() and ASCII() h ...

  5. Asc函数与Chr函数

    返回值: Integer    返回字符串中第一个字符的字符代码.    提示: Chr函数可以将一个Ascii码转换为相对应的字符 语法:   Asc(string) string,必须参数,字符串 ...

  6. python中chr()函数和ord()函数的用法

    一,chr()函数 格式:Chr(<数值表达式>)   说明:函数返回值类型为String,其数值表达式值取值范围为0~255.   例如:Print Chr(78),结果显示:N.   ...

  7. OC与c混编实现Java的String的hashcode()函数

    首先,我不愿意大家需要用到这篇文章里的代码,因为基本上你就是被坑了. 起因:我被Java后台人员坑了一把,他们要对请求的参数增加一个额外的字段,字段的用途是来校验其余的参数是否再传递过程中被篡改或因为 ...

  8. Oracle中的CHR()函数与ASCII()函数

    工作中经常会处理一些因特殊字符而导致的错误,如上周我就遇到了因为换行符和回车符导致的数据上报的错误,这种错误比较难以发现,通常是由于用户的输入习惯导致的,有可能数据极少,就那么几行错误从而导致整个数据 ...

  9. string类find函数返回值判定

     string类find函数返回值判定 代码示例 #include<iostream> #include<cstring> using namespace std; int m ...

随机推荐

  1. eclipse-->run as --> maven test 中文乱码

    其有一个配置参数forkMode,默认为once,即表示每次运行test时,新建一个JVM进程运行所有test. 这可能会导致乱码问题.首先将forkMode设置为never,即不新建.再运行mvn ...

  2. SSH小项目整合的简单记录

    第一步.导入sprint4.struts2和hibernate4的jar包 struts2的jar包 commons-fileupload-1.3.3.jar commons-io-2.5.jar c ...

  3. 虚拟化 - VMware

    和VirtualBox一样,也需要关掉Hyper-V才能启动虚拟机,否则会报Guard的错误. 网络 [转]VMware网络连接模式-桥接.NAT以及仅主机模式的详细介绍和区别 桥接 就好像在局域网中 ...

  4. delphi 在字符串中输出单引号'

    在程序代码里,用单引号 引起来的两个单引号,经过编译后是一个单引号.'''ok''':编译后表示'ok';

  5. WebService-php- 1(16)

    最近看了挺多关于php中webservice的资料,感谢燕十八的分享,帮助了我构建服务端的过程.将学习笔记记录如下,其中包含燕十八的笔记. WebService 1 快速了解WebService 通俗 ...

  6. 八.linux系统文件属性知识

    1.文件属性权限是12位,现在只看9位,其中每3个一组,为:属主权限.属组权限.其他权限,其中r可读,w可写,x可执行,如图: 2.文件属性之软硬链接   linux系统中有两种链接,为硬链接(ln) ...

  7. 【ocp-12c】最新Oracle OCP-071考试题库(46题)

    46.(10-4) choose two: Examine the data in the CUST_NAME column of the CUSTOMERS table. CUST_NAME --- ...

  8. 【OCP-12c】CUUG 071题库考试原题及答案解析(20)

    20.choose two Examine the description of the EMP_DETAILS table given below: Which two statements are ...

  9. Windows server 2008启动remote dosktop services服务报错1079

    原创 欢迎转载,届时请注明出处 报错场景 今天,刚开始启动win server的远程连接服务(remote desktop services)时 该服务可以正常启动,然后选择了  “计算机--> ...

  10. CrackMe破解系列第一番Acid_burn

    本文作者:gncao 楼主目前是做渗透测试的,在看一些大神的文章时,有时会看到一些关于逆向方面的知识,无奈楼主不懂逆向.但是身为搞技术的嘛,不懂就学,学不懂就再学,所以就在前些日子看了一些基础的汇编视 ...