半多个换行符

时间:2013-12-26 19:39:09

标签: php newline

这是一个愚蠢的问题,实际上只是为了个人利益, 但你怎么会把多个换行减半?

所以我说我有一系列的两个\ r \ n(回车符/换行符)作为常量,所以

Class FOO
{
    Const DELIM = "\r\n\r\n";

    private fullDelim, halfDelim = false;

    public function __construct()
    {
        $this->fullDelim = self::DELIM;
        $this->halfDelim = substr(self::DELIM, -(count(self::DELIM)/2); // or something ??
    }
}

这是理智的做法吗?你甚至可以继续换行吗?我非常好奇你是如何以“理智”的方式解决这个问题的?

2 个答案:

答案 0 :(得分:1)

使用strlen()获取字符串的长度,而不是count()

$this->halfDelim = substr(self::DELIM, -(strlen(self::DELIM)/2);

答案 1 :(得分:0)

老实说这很有效,我实际上有点惊讶......

$half substr(self::DELIM, -(preg_match_all ('/\r\n/', self::DELIM)/2));

测试

echo preg_match_all ('/\r\n/', self::DELIM);  // 2
echo count(substr(self::DELIM, -(preg_match_all ('/\r\n/', self::DELIM)/2))); // 1