在PHP的函数调用中使用哈希?

tre*_*der 6 php function

昨天我参加了PHP开发人员职位的采访.我的工作是在非常简单的测试中解决15个问题.其中一个问题是标记所有位置,在给定的示例PHP代码中,执行将因致命错误而停止.其中,我标记为错误的东西:

$this->someFunction(#);
Run Code Online (Sandbox Code Playgroud)

接受采访的另一个人告诉我,我错了,因为这不是致命的错误.

有人可以点我,为什么以及如何在PHP函数调用中使用哈希(#)?我从来没有见过像这样的结构,谷歌告诉我这不是什么(或者我做错了搜索).

Roc*_*mat 7

#字符用于单行注释.

这本身就是语法错误,因为没有 )

$this->someFunction(#);
Run Code Online (Sandbox Code Playgroud)

这被解读为:

$this->someFunction(
Run Code Online (Sandbox Code Playgroud)

但是,如果此后有线,那就没关系.例:

$this->someFunction(#);
    'a', 'b', 'c'
);
Run Code Online (Sandbox Code Playgroud)

#);是一个注释,而不是解析,所以PHP看到

$this->someFunction(
    'a', 'b', 'c'
);
Run Code Online (Sandbox Code Playgroud)

这是有效的.

  • 这不是练习,而是一种考验. (2认同)