6

昨日、PHP開発者の面接を受けました。私の仕事は、非常に簡単なテストで 15 の質問を解くことでした。質問の 1 つは、与えられた PHP コードの例で、実行が致命的なエラーで停止するすべての場所をマークすることでした。とりわけ、私はそのようなものを間違っているとマークしました:

$this->someFunction(#);

インタビューの他の人は、これは致命的なエラーではないので、私が間違っていると言った.

PHP関数呼び出しでハッシュ(#)を使用する理由と方法を教えてください。私はそのような構造を見たことがなく、Google はこれについて何も言わなかった (または間違った検索をしたのかもしれない)。

4

3 に答える 3

7

この#文字は、1 行のコメントに使用されます。

ないため、それ自体が構文エラーになります。)

$this->someFunction(#);

これは次のように読みます。

$this->someFunction(

でも、この後にセリフがあればOK。例:

$this->someFunction(#);
    'a', 'b', 'c'
);

#);コメントであり、解析されないため、PHP は

$this->someFunction(
    'a', 'b', 'c'
);

これは有効です。

于 2012-10-26T20:13:49.720 に答える
4

これにより、致命的ではなく「解析エラー」が発生します。自分で確認するだけです。

于 2012-10-26T20:12:31.250 に答える
2

通常、PHP コードでは C スタイルのコメント (//および/* */) を使用します。ただし、PHPシェル スタイルのコメント(つまり)を使用します#。したがって、#I think PHP is ignoring all my comments有効なコメントです。

上記のコードでは、致命的な構文エラーが発生します。これは、PHP が$this->someFunction((閉じ括弧またはセミコロンがない) しか認識していないためです。

于 2012-10-26T20:13:58.530 に答える