読者です 読者をやめる 読者になる 読者になる

リスを倒す 『初めてのPHP,MySQL,JavaScript&CSS』

『初めてのPHP,MySQL,JavaScript&CSS』勉強奮闘記

3-3. PHP基礎③変数おまけ

今日で3章おわらすぞーと思いきやまだまだ道のりは長い…
今回は変数のおまけの補足を書きます。

んで、次回:定数について、次々回:関数についてをまとめて3章を終わらせたいと思います。
よし、ワイン1本あけて勢いをつけよう(•ө•)♡

1. ピリオド演算子で変数を連結しよう


代入演算子については前回お勉強しましたが、別章でお勉強にしていた『.=』について。
『.(ピリオド)演算子』を使用すると、ストリングを連結する(文字と文字をつなぐ)ことができます。
たとえば、変数$msgsに値5が設定されていると、

<?php

$msgs=5;

echo "you have" .$msgs . "messages.";

?>

出力はこうなります。
f:id:taro-blog2323:20160716141134p:plain
ほー一文になった。すげー笑

2. 引用符ちょんちょんの数で意味がかわる


一重引用符と二重引用符を使い分けることで文字をそのまま保って代入するか、文字の一部を代入するかの扱いが変わります。
◎一重引用符の場合

<?php

$info= 'Preface variables with a $ like this : $variable';

echo $info;

?>

$variableは変数として扱われずに''のただの文として扱われます。
f:id:taro-blog2323:20160716143259p:plain

◎二重引用符の場合


<?php

$count=5;

echo "There have been $count presidents of the US";

?>

$countが変数として扱われて結果は以下のようになります。
f:id:taro-blog2323:20160716145819p:plain

3. 引用符の罠


『sister's』とか、『I said "Yes I can!"』(文適当すぎますが)とか引用符で使うつもりがないけど、一文に入れたいんですけど...というときがあります。
例えば、

<?php

$text = 'My sister's car is a Ford';

?>

とコードを打つとエラーが表示されます。これは、'My sister'sで使われているちょんちょんがストリングの終わりを意味してしまうからです。
その場合、問題となるちょんちょんの前にバックスラッシュを入れることで、こいつはストリングの終わりではないよーと伝えることができます。

<?php

$text = 'My sister\'s car is a Ford';

?>

4. 複数行にわたるコマンド

PHPから多量のテキストを出力する場合、echoステートメントをいくつも記述するのはちと面倒です。
複数行をくくってしまう2種類の方法を紹介ます。

①複数行を引用符で囲う
今回よくでてくる、ちょんちょんですね。


<?php

$author = "Alfred E Newman";

echo "This is a Headline

This is the first line.

This is the second.

- Written by $author.";

?>

結果はこう。
f:id:taro-blog2323:20160716152619p:plain

②<<<演算子を使う
ヒアドキュメントと呼ばれる<<<演算子を使うことでも複数行をくくることができます。


<?php

echo <<<_END

This is a Headline

This is the first line.

This is the second.

- Written by $author.";

_END;

?>

結果はこう。
f:id:taro-blog2323:20160716152621p:plain

最初の『END』のあとはセミコロンはつけないことと、最後の『_END;』は必ず新しい行の先頭にならなければならないことが注意点です。『_END;』を先頭にせずに出力してみると見事にエラーが返ってきました…

一気に3章いきたいですが、やっぱり長くなってしまうので、今回はここらへんで。
冒頭に書いた通り、次は定数についてお勉強していきます。

いじょー