这是做什么的?

时间:2011-03-16 20:29:33

标签: php

我从来没有见过$ret = N.T.T.T.T.'<div id="toptabs">';或类似的东西,似乎这会引发一个解析错误......任何人都可以解释它为什么没有?

public function renderTabs() {
    if(empty($this->currentTabs)) {
        return '';
    }

    $ret = N.T.T.T.T.'<div id="toptabs">';
    if(!empty($this->currentTabs['left'])) {
        $ret .= $this->doTabs($this->currentTabs['left'], 'left');
    }
    if(!empty($this->currentTabs['right'])) {
        $ret .= $this->doTabs($this->currentTabs['right'], 'right');
    }
    $ret .= N.T.T.T.T.'</div>';

    return $ret;
}

12 个答案:

答案 0 :(得分:3)

NT似乎是constants
.连接它

从命名和用法我可以假设N代表换行符,T代表。

你从来没有见过它,因为编写这样的东西很奇怪

$ret = "\n\t\t\t\t<div id='toptabs'>";

或只是

$ret = "
                <div id='toptabs'>";

看起来更熟悉

无论如何,根本不应该使用所有这些格式,因为所有输出都应该由模板来处理,让我们写出这样的格式

答案 1 :(得分:3)

我认为这些是在某处定义的常量,用于指示新行和制表符。

define("T", "\t");
define("N", "\r\n");

答案 2 :(得分:2)

漂亮的你有两个define,就像那些:

define('T', "\t");
define('N', "\n");

因此T将是一个制表符,N是换行符。

答案 3 :(得分:2)

对于解析器,NT是常量,可能是字符串(但无论如何,它们被假定为可以连接成字符串的类型的变量)。像任何其他字符串一样,它们可以连接在一起。

答案 4 :(得分:2)

我愿意打赌N是一个带有新行的常量(可能是
),而T是一个标签(可能是4个空格; 4x &nbsp;

另外,请记住.是PHP中的连接运算符。

答案 5 :(得分:2)

您可以使用defined()

检查这些是否是常量

答案 6 :(得分:1)

NT应为constants

答案 7 :(得分:1)

NT可能是该名称的常量。

但是,如果没有定义,PHP对常量的草率处理会将它们解析为字面“N”和“T”。 (尽管如此,你会收到E_NOTICE级警告。)

尝试echo constant("N");查看它们是否存在。

答案 8 :(得分:1)

NT以及常量连接在一起。

关于常量的PHP文档: http://php.net/manual/en/language.constants.php

答案 9 :(得分:1)

N和T可能是全局常量,定义为新行和制表符。虽然IMO不是很好。

答案 10 :(得分:1)

这些看起来像在脚本中的其他地方定义为N和T的常量。寻找类似的东西:

define(“N”,$ somevalue); define(“T”,$ somevalue);

看起来剧本正在将它们附加在一起。

答案 11 :(得分:1)

您需要在此代码之前的某处定义常量N和T.