php从指定ASCII值返回字符函数chr()

黄舟
Lepaskan: 2023-03-16 21:42:02
asal
2050 orang telah melayarinya

实例

从不同 ASCII 值返回字符:

<?php
echo chr(52) . "<br>"; // Decimal value
echo chr(052) . "<br>"; // Octal value
echo chr(0x52) . "<br>"; // Hex value
?>
Salin selepas log masuk

定义和用法

chr() 函数从指定 ASCII 值返回字符。

ASCII 值可被指定为十进制值、八进制值或十六进制值。八进制值被定义为带前置 0,十六进制值被定义为带前置 0x。

语法

chr(ascii)
Salin selepas log masuk
参数描述
ascii必需。ASCII 值。

技术细节

返回值:返回指定的字符。
PHP 版本:4+

更多实例

使用八进制值 046 来添加 ASCII 字符:&。

<?php
$str = chr(046);
echo("You $str me forever!");
?>
Salin selepas log masuk

实例 2

使用十进制值 43 和 61 来添加 ASCII 字符:+ 和 =。

<?php 
$str = chr(43);
$str2 = chr(61);
echo("2 $str 2 $str2 4"); 
?>
Salin selepas log masuk

chr()函数的作用与ord()函数相反,用于返回指定的字符,如chr(97)返回a。

结合上面实例,只要获取到中文字符的ASCII值,就可以通过chr()函数组装出中文字符,代码如下

$string = "不要迷恋哥"; 
$length = strlen($string); 
var_dump($string);//原始中文 
var_dump($length);//长度 
$result = array(); 
for($i=0;$i<$length;$i++){ 
if(ord($string[$i])>127){ 
$result[] = ord($string[$i]).&#39; &#39;.ord($string[++$i]); 
} 
} 
var_dump($result); 
foreach($result as $v){ 
$decs = explode(" ",$v); 
echo chr($decs[0]).chr($decs[1]); 
}
Salin selepas log masuk

6T1B)SE`9D)A0V$L$[S4@3M.png

如上代码并没有直接输出中文字符,但打印出正常的汉字,其原理是首先获取各个字节的ASCII值,通过chr()函数转化为字节,再把两个字节组合起来就形成了一个完整的中文汉字。 

Atas ialah kandungan terperinci php从指定ASCII值返回字符函数chr(). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan