📜  PHP | IntlChar::iscntrl()函数(1)

📅  最后修改于: 2023-12-03 15:18:24.634000             🧑  作者: Mango

PHP | IntlChar::iscntrl()函数

在PHP的IntlChar类中,有一个iscntrl()函数,用于判断一个Unicode字符是否为控制字符。

语法
IntlChar::iscntrl( $codepoint );
参数
  • codepoint: 必需。要检查的Unicode字符的编码值。
返回值

如果编码值指向的字符是一个控制字符,则返回TRUE。如果不是,则返回FALSE

示例
示例1: 确定一个字符是否为控制字符
<?php
$char1 = IntlChar::iscntrl( ord( "\n" ) ); // True
$char2 = IntlChar::iscntrl( ord( "a" ) );  // False

echo "Is \\n a control character? " . ($char1 ? "Yes" : "No") . "\n";
echo "Is a a control character? " . ($char2 ? "Yes" : "No") . "\n";
?>
示例2: 循环遍历字符串并确定是否包含控制字符
<?php
$str = "Hello \n World!\n"; // 包含2个控制字符,一个是换行符,另一个是行首的控制符

for( $i=0; $i<strlen($str); $i++ ) {
    if( IntlChar::iscntrl( ord($str[$i]) ) ) {
        echo "Control character found: " . ord($str[$i]) . "\n";
    }
}

?>

输出:

Control character found: 10
Control character found: 31
注意事项
  • 该函数只能检查单个字符是否为控制字符,无法检查多字符字符串中是否含有控制字符。但可以在字符串中循环遍历并单独检查每个字符。
参考链接

IntlChar Class - iscntrl() method