web-dev-qa-db-ja.com

PHP変数の前にドル記号を付ける必要があるのはなぜですか?

すべてのPHP変数の前にドル記号を付ける必要があることを理解しています(例:$someValue = 1)、しかしなぜこれが当てはまるのですか?なぜこのデザインを選択したのですか?

私が尋ねる理由は、PHP変数はドル記号で始める必要があると述べたときにガールフレンドに尋ねられたのですが、なぜこの構文の選択が行われたのかわからなかったことがわかりました。

何か案は?

13
Ivan

まあ、私は本当に$$$の大ファンでもありません(変数がどれだけかかるかは気にしていません)。しかし、それはPerlから来ています。

Perlやphpなどの解釈されたスクリプト言語は、$を使用して変数をすばやく識別および解析します。インタプリタの最適化にすぎません。しかし、間違いなくプログラマーのための最適化ではありません!

8
JSideris

PHPは元々、構文解析され、コンパイルされたcプログラム関数を単に動的に呼び出すメタ構文でした。
このように、「ウェブ」用の「シェル」プログラムと同様に考えることができます...
$ dollarsignsを含む変数がシェル変数と同様に使用されたのも不思議ではありません。

私が12歳だったとき、PHP 3 ...を最初のプログラミング言語として学んでいました-$を使うと生活がとても簡単になりました。変数が何であるかは知っていましたが、私が読んだすべてのソースコードのリマインダーで学習が可能になりました... PHPを開始しなかった場合、今日ここにいるかどうかはわかりません。

以下は-> http://www.php.net/manual/en/history.php.php の例です。

 <!-include /text/header.html-->

<!--getenv HTTP_USER_AGENT-> 
 <!-ifsubstr $ exec_result Mozilla-> 
ねえ、あなたはNetscapeを使っています!<p> 
 <!-endif-> 
 
 <!-sqlデータベース選択*テーブルからuser = '$ username'-> 
 <!-ifless $ numentries 1-> 
すみません、そのレコードは存在しません<p> 
 <! --endif exit-> 
ようこそ<!-$ user->!<p> 
アカウントに<!-$ index:0->クレジットが残っています。 <p> 
 
 <!-include /text/footer.html-->
5
Ben DeMott