今までは、PHPプログラミングの超基礎的な部分で、いろいろな変数の型に ついてお話してきましたが、今回はちょっと寄り道をして、別な話題について 言及したいと思います。 これも大事なことなのですが、今まで、説明し忘れて、今回お話しておかない と、半永久的にお話しないことになりそうなので。。。ゴメンナサイ。 では、とりあえず、前回のことまでは、スッパリと切り離して、今回の話題を ば。。。 ■「”」と「’」の働き 今回は、「”」(ダブルクォーテーション)と「’」(シングルクォーテーシ ョン)の働きの相違についてのお話です。 PHPのプログラムを作成する際、変数に数字や文字列を代入するケースは非 常に多くあります。 その際、変数に文字列を代入する時は、代入する文字列を「”」か「’」で囲 みます。 例えば、こんな具合です $moji = "abc"; あるいは、 $moji = 'abc'; といった具合です。 「”」と「’」は同じ働きをしますが、多くの書籍を見てみると、「”」を使 っているのがほとんどのようです。 逆に、変数に数字を代入する場合には、「”」や「’」で囲まずに、そのまま の形で書きます。 こんな具合です。 $suuji=1256; また、計算式の結果を代入する場合も、同じように何も囲まずにそのまま書き ます。 $tasizan = 1+1; この場合、変数「$tasizan」には「1+1」の結果である「2」が代入されます。 話は、少し横道にそれますが、ここで、 $tasizan = "1+1"; と書いたらどのようになるのでしょうか? 答えは、「$tasizan」の中には「1+1」という文字列が代入されます。 そう、「1+1」が計算としてではなく、そのままの文字列として扱われること になります。 では、実際にプログラムを書いて実験してみます。 ---------------------------------------------- <?php $tasizan_1 = 1+1; $tasizan_2 = "1+1"; print("計算としての結果は $tasizan_1 です"); print("<br>"); print("文字列としての結果は $tasizan_2 です"); ?> ---------------------------------------------- ※$tasizan_1,$tasizan_2の前後に半角スペースがあることに注意してくださ い 「<br>」はHTMLでもおなじみの改行のタグです。 これを、069-1.phpという名前で、C:\Inetpub\wwwroot\phpフォルダに保存し て
ブラウザのアドレス欄にhttp://localhost/php/069-1.phpと入力すると、図の ような結果が表示されるかと思います。
■「”」と「’」の働きが違う場合 上の説明では、「”」と「’」は同じ働きをするとお話しましたが、ここで1 つだけ違う働きを示す例を挙げたいと思います。 例として上の実験で用いたPHPプログラムを使用します。 それが下記の例です ---------------------------------------------- <?php $tasizan_1 = 1+1; $tasizan_2 = "1+1"; print('計算としての結果は $tasizan_1 です'); print("<br>"); print('文字列としての結果は $tasizan_2 です'); ?> ---------------------------------------------- この例では、print文の()中身の「”」を「’」に変えただけです。 既に説明した内容からすると、これも同じ結果が得られると予想できますが、 これを、069-2.phpという名前で、C:\Inetpub\wwwroot\phpフォルダに保存し て
ブラウザのアドレス欄にhttp://localhost/php/069-2.phpと入力すると、図の ような結果が表示されるかと思います。
そうです。「”」の代わりに「’」を使うと、それぞれの変数の中身ではなく、 変数名そのものが表示されてしまいます。 このようにprint文を使う時には、「”」と「’」の働きが違うので、注意が 必要です。 ですから、PHPのプログラムを作る際は、余程のことがない限り、「”」を 使うのが無難だと思います。 「”」と「’」をゴチャマゼに使うと、思わぬところで変な結果が出てしまう ことがあります。
42歳のオヤジでもできた!パソコンサーバー化計画 (マガジンID:0000114576)
Powered by