web-dev-qa-db-ja.com

PHPの変数の主要な命名規則は何ですか:キャメルケースまたはアンダースコア?

コンセンサスは、彼らが開発しているプラ​​ットフォームの慣例に従うべきだということです。見る:

アンダースコアまたはキャメルケース?

命名規則:camelCaseとunderscore_case?

ただし、PHPは、メソッドや関数(例:mysqli::set_local_infile_defaultPDOStatement::debugDumpParams);ただし、関数名ではアンダースコアが支配的であるようです。

しかし、私が見つけられなかったのはこれでした:PHPの変数の主要な命名規則は何ですか?

56
sbichenko

PHPで10年以上コーディングしていると、アンダースコアからキャメルケースへの変更がわかります。特にZendやSymfonyなどのより大きなフレームワークは、アンダースコアを禁止していない場合にもcamelCaseを基に構築されますが、すべてのコア機能はcamelCaseです。

古いシステムでは、古いTypo3ブランチ(Typo3 NeoもcamelCaseに変更された)など、多くのアンダースコアソリューションを見ることができます。

しかし、誰もが使用している厳密なルールは絶対にありません。それは、過去数年間に私が見ることができるものにすぎません。

16
Tobias

これは、プログラマ/開発者だけでなく、彼らが取り組んでいるフレームワークやオープンソースにも依存します。たとえば、Yiiフレームワークでは、キャメルケースを使用することをお勧めします。一方、Codeigniterフレームワークでは、ほとんどの人が変数名に下線を付けます。特定のことは、使用するフレームワークに関係なく、変数名は理解可能で識別可能でなければなりません。

1
kanjilal

個人的には、これはどちらの方法でも可能です。 CamelCaseの書き方を好むプログラマーもいれば、アンダースコアを好むプログラマーもいます。したがって、このような質問をすると、各プログラマーは独自の意見を持っているため、無関係です。個人的には、状況に応じて両方を行う習慣があります。 ..

状況1:

プログラミングチームに参加し、進行中のプロジェクトに参加すると、変数の例が設定されていることがわかります。

$theString = "This is a camelcase example";

しかし、あなたは好ましいスタイルを持っています:

$the_string = "This is not a camelcase example"; 

このような状況では、キャメルケースに留めておくことをお勧めします。

状況2:

プロジェクトソロを開始したい。

このような場合...それはあなたが快適に感じるものにまで及びます:以下の点で悪い習慣を覚えておいてください:

$theString = "This is a sample String"; 
$the_string = "This is another sample string within the same project"; 

これにより、予期しない出力が簡単に発生する可能性があります。

0
Daryl Gill