【问题标题】:Set ascii const in utf8 class在 utf8 类中设置 ascii const
【发布时间】:2014-09-03 14:10:17
【问题描述】:

我需要指定一些 const(终止符)。

文件采用 UTF8 编码。

类基础{
  const PROTO = chr(2) 。 chr(2) 。 chr(3) 。 chr(1);
  功能测试($str){
    if (substr(str,0,4) == self::PROTO) {
    ...
    }
  }
}

至于现在使用后期初始化:

公共函数 __construct() { $this->_proto = chr(2) 。 chr(2) 。 chr(3) 。 chr(1); }

如果有可能这样做就很有趣

【问题讨论】:

    标签: php


    【解决方案1】:

    您可以将它们指定为八进制表示法的字符串,例如const PROTO = "\2\2\3\1",或者如果您更喜欢十六进制const PROTO = "\x2\x2\x3\x1"

    chr(n) 所做的是返回由数字 n 指定的 ASCII 字符,它是十进制表示法。如果先将n 转换为八进制或十六进制,则可以在double-quoted string 中获得相同的内容,然后分别在其前面加上\\x

    在此处的示例中,所有数字碰巧保持不变,因为它们都小于 8,因此在所有三种符号中都有相同的数字。如果您想要一个垂直制表符,您可以将其指定为chr(11)(十进制)、"\xB"(十六进制)或"\13"(八进制)。

    http://www.asciitable.com/ 有一个方便的 ASCII 表,它为您提供了每个字符的所有三种符号。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2014-05-08
      • 1970-01-01
      • 2018-05-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-20
      • 1970-01-01
      • 2019-10-31
      相关资源
      最近更新 更多