質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

5回答

2001閲覧

PHPのコメントの意味

nnahito

総合スコア2004

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2017/07/26 04:27

PHPのコメントは、3種類ありますよね?
# コメント// コメント/* コメント */という風に。

これらの使い分け、意味はあるのでしょうか?
私は、perl、python、phpを使っているので基本的に#で統一しています。
またどこかの記事で、「PHPのコメントは#で、//はコードを一時的に隠すようなときに使う」という表記を見た気がして、特に#を使っています。

ただ、純粋に考えて、これらに違いはありません。
しかし、意味があるから3つの表記があるのだと思います。

これらの意味とは何でしょうか?
どのように使い分けるのが正しいのでしょうか?

ご存じの方がいらっしゃいましたら、ご教示ください。
よろしくお願いいたします。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答5

0

開発チーム内もしくは使用しているフレームワークのコーディング規約に沿っていればどれを使っても良いと思います。

【PHPコーディング規約まとめ - Qiita】
http://qiita.com/hshimo/items/04be1f432240c58300f4

【PHPのコーディング規約 PSR-0、PSR-1、PSR-2、PSR-3とは | 9ensanのLifeHack】
http://9ensan.com/blog/programming/php/php-psr-coding-standards/

たとえば「#」はpearのコーディング規約では推奨されていないようです。

【Manual :: Comments】
http://pear.php.net/manual/en/standards.comments.php

C style comments (/* */) and standard C++ comments (//) are both fine. Use of Perl/shell style comments (#) is discouraged.

投稿2017/07/26 04:54

kei344

総合スコア69398

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/07/26 13:55

ご回答ありがとうございます!! 使い分けは結局規約によるものだけなのでしょうか?
kei344

2017/07/26 14:18

機能に差が無い以上、使い分けするしないは「規約」というか「そのチーム(開発者)の慣習」によるとおもいます。
guest

0

'C', 'C++' および Unix シェル型(Perl 型)のコメントをサポート」しているそうです

/**/は複数行コメントかつ終端子があるので文中にもつかえるので、
他の2つとは用途がちがいます

print 1/2/+3;→4

//や#は行末までのコメントなので、基本的には同じものです
2種類用意されているのは他言語ユーザーが移行して着やすいように
エミュレートしている関係だとおもいます

個人的には#より//の方がコメントとして明示的だとおもいます

投稿2017/07/26 04:39

yambejp

総合スコア114769

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/07/26 13:54

ご回答ありがとうございます!! 何故、//の方が明示的なのでしょうか? web言語において、どちらかと言えば#の方がコメントとして明示的なきはします。 perl,python,rubyがそうですし……
nawada

2017/10/10 04:45

> perl,python,ruby ウェブ言語というよりかは、軽量プログラミング言語 (LL言語) と言ったほうが適切でしょうか。 エンタープライズ系で使われる Java は1行コメントが `//` になりますが、質問者さんが挙げてるように Perl, Python, Ruby は `#` になると思います。 PHP は、元をたどれば C になるので、 `//` が明示的になるといった考え方もできるのかなと思います。 ただ、他の回答者さんも言っておられるように単純に決めの問題だと思うので、LL言語使用者が多い環境であれば `#` を使えばいいと思いますし、C や Java や JS で `//` に慣れているのであれば `//` で良いと思います。
guest

0

個人のやり方とか現場でルールが決まってたりするので、どの使い方が正しいというのはないと思います。
ある程度意識が統一されていた方が読みやすくなりますけどね。

あくまで個人的な利用方法ですが、

「#」 → 一行で表示したいコメント。ソースに「何をする処理」とか軽く添える
「//」 → 「一時的に利用しないコード」に対するコメントアウト とはいえ「#」と同じように使うことも多い
「/* */」 → 複数行コメント。functionとかclassのタイトルとしてPHPDoc向けに書いたり、一気に複数行の「一時的に利用しないコード」をコメントアウトしたいときに使う

一応、参考先を・・・

投稿2017/07/26 04:34

編集2017/07/26 04:38
m.ts10806

総合スコア80850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

nnahito

2017/07/26 13:53

ご回答ありがとうございます!! コメントアウトのやり方や、意味は知っているのですが、なぜ一行コメントが2つ存在しているのか、また、使い分けはどうなのかが知りたいと思っております。 同じなら、何故統一しなかったのか……
m.ts10806

2017/07/27 01:12

あまりよくない言い方ですがPHPがそれだけ「ゆるい言語」ということだと思います。 PHP7になって改善は進んでいるとは思いますが、(現時点で)致命的な不具合を引き起こさないような 様々な名残や慣習は割りとそのまま残っています。 nnahitoさんのようにPerlなどを使っているのであれば確かに#の方が馴染み深いでしょうし、 自身が使いやすい方を使うというのでじゅうぶんだと思います。 もし現場でコーディング規約がありコメントの書き方まで指定してあればそれに倣い、 そうでなければ自身がやりやすいやり方でコメントつけるので良いでしょうね。 コメントのつけ方よりも、より効率的で読みやすく、高速に動くコードを書く方が大事です。
guest

0

予想の範疇ですが、
今のPHPが作られる経緯に、以下のような事があります。

PHPの歴史

C や Perl などを知っている人たちがPHPに移行しやすいようにしてある

C言語のコメントは「//」「/* /」であり、
Perl言語のコメントは「#」「=」「/
/」であるため、
PHPの作り上、「=」をコメントとするのが面倒となり、
「//」「#」「/
*/」が残ったと思われます。

それぞれ、どういう使い方をするかは現場次第でしょうね。

ちなみに、私は基本的に//でコメントアウト(/**/も使わない)です。

投稿2017/07/27 12:06

tomari_perform

総合スコア760

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

質問者様の意味する使い分けとは、ちょっと意味が違うかもしれませんが・・・
コメントスイッチも使い分けの一つかと。

PHP

1//* * 2 #↑のスラッシュの数で 切り替え 3 echo "case a" ; 4/*/ 5 echo "case b" ; 6/* */

投稿2017/07/27 02:55

namimon

総合スコア726

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問