web-dev-qa-db-ja.com

PHPでコメントにハッシュ記号(#)を使用できますか?

ハッシュ(#)を使用してコメント用のPHPファイル)を見たことはありません。 //代わりに、ここにいます。

コメントに//ではなく#を使用する理由はありますか?

131
Hubro

質問への答えはありますか任意の違い PHPの単一行コメントに "#"と "//"を使用することの間に?no

違いはありません。 PHPソースコードの解析部分を見ると、 "#"と "//"の両方が同じコードで処理されます であるため、まったく同じ動作になります。

152
Aziz

PHPのドキュメントでは、コメントのさまざまな可能性について説明しています。 http://www.php.net/manual/en/language.basic-syntax.comments.php を参照してください

ただし、「//」と「#」の違いについては何も言及していません。したがって、技術的な違いはないはずです。 PHPはC構文を使用しているため、ほとんどのプログラマーがCスタイルのコメント「//」を使用しているのはそのためだと思います。

11
naitsirch
<?php
    echo 'This is a test'; // This is a one-line C++ style comment
    /* This is a multi-line comment.
       Yet another line of comment. */
    echo 'This is yet another test.';
    echo 'One Final Test'; # This is a one-line Shell-style comment
?>

[〜#〜] rtm [〜#〜]

7
ajreal

個人的な好み以外に、コメントに#ではなく//を使用する理由はありますか?

個人的な好みにすぎないと思います。 //#の間に違いはありません。私は個人的に#を1行のコメントに、//をコードのコメントアウトに、/** */をブロックコメントに使用しています。

<?php
    # This is a one-line comment
    echo 'This is a test';

    // echo 'This is yet another test'; // commenting code

    /** 
     * This is a block comment
     * with multi-lines 
     */
    echo 'One final test';
?>
6
Sithu

考えるかもしれません#コメントの形式は、主に使い慣れた "Shebang"(#!)表記を使用してシェルスクリプトを作成することを目的としています。次のスクリプトでは、PHPはコメントでもあるため、最初の行を無視する必要があります。例:

#!/usr/bin/php
<?php

echo "Hello PHP\n";

実行可能ファイルに保存すると、次のような端末から実行できます

./hello

出力は

Hello PHP

ただし、次の反例が示すように、この推論は誤りです。

#!/usr/bin/php
#A
<?php

#B
echo "Hello PHP\n";

最初の行(シバン行)は、インタープリターによって特別に無視されます。 PHPタグの前のコメント行は、PHPタグ内にないため、標準出力にエコーされます。開始後のコメントPHPタグはPHPコードとして解釈されますが、コメントであるため無視されます。

改訂版の出力は

#A
Hello PHP
5
Brandin

から https://php.net/manual/en/migration53.deprecated.php

「PHP 5.3.x ...の非推奨機能...「#」で始まるコメントは、.INIファイルで非推奨になりました。」

そこにあります。ハッシュ「#」は非推奨ではないため、デフォルトでコメントオプションとして残っているようです。ネストされたif/elseステートメントのさまざまなレイヤーを区別して閉じ括弧をマークするために使用するか、他の関連記事で提案されているようにコードコメントとコメントアウトされたコードを区別するために使用します。 (注:4/23/19の時点でリンクは有効/機能していましたが、これを読んでいるときにリンクが機能するかどうかは誰にもわかりません。)

0
BarbaraRoseNow

そのための公式PSRはありません。

ただし、すべてのPSRサンプルコードでは、//インラインコメント用。

それを標準化することを目的とするPSR-2拡張提案がありますが、公式ではありません: https://github.com/php-fig-rectified/fig-rectified-standards/blob/master/PSR-2- R-coding-style-guide-additions.md#commenting-code

//は、PHPカルチャでより一般的に使用されますが、#も。個人的には、短くてバイトを節約できるのが好きです。それは個人的な好みであり、偏見があります。もちろんそれが標準になるまで、それに対する正しい答えはありません。

0

チーム/プロジェクトでいくつかのルールセットを確立する場合... 2種類のコメントを使用して、コメント付きコードの目的の概要を説明できます。

たとえば、#を使用して、構成設定、サブ機能、および一般的に有用または重要であるが現在は無効になっているコードをミュート/無効にします。

0
d.raev

個人的な好み以外に、コメントに#ではなく//を使用する理由はありますか?

私は自分で答えを求めてここに来ましたが、[〜#〜] no [〜#〜]コードの違いがあることを知っておくとよいでしょう。

ただし、好みに応じて、「Shell-> Perl-> php」のコメント一貫性よりも「c-> php」の方が好ましいと主張できます。

貧乏人のwebby Perlとしてphpにアプローチしたので、#..を使用していました。その後、他の誰かのコードを見て、すぐにSOに行きました。 ;)

0
Gerard ONeill

はい、ただし、プラットフォーム間の違いがあります。

私はPHPでのコメントに常に#を使用していますが、採用の違いに気付きました。

Windowsキーボードでは、#キーは使いやすいです。 Macキーボードでは#キーはほとんどありません。

Macユーザーの場合、[Alt] + [3]または[⌥] + [3]は//よりも入力が難しいため、//はコメント付きのコードを表示するクロスプラットフォームの方法になりました。

これは私の観察です。

0
Mark N Hopgood