Language
日本語
English

Caution

JavaScript is disabled in your browser.
This site uses JavaScript for features such as search.
For the best experience, please enable JavaScript before browsing this site.

  1. Home
  2. PHPBeginner - Statements, Semicolons, and Indentation

Statements, Semicolons, and Indentation - Japanese Only

みなさまどうもおはこんばんにちわ。

PHP入門編も10ページ目に突入でございます。最初の記事からお読み頂いた方はとてもお疲れ様でございました。このような駄文をここまでお読み頂き大変光栄でございます。

そして初めて記事をお読み頂いた方はどうも初めまして。どうぞごゆっくりしていってください。

ではそろそろPHPの基本的な記法とか処理の流れとかもろもろを把握出来た頃合いだと思いますので、今回はPHPにおいての『』とか空白文字とタブ文字と改行の扱いなんかをやっていきたいと思います。

まずは『;』(セミコロン)についてちょっと解説です。これまでのサンプルで、『文』のおしりに『;』が入っていましたよね。

<?php
echo 'Hello world';

こんな感じでPHPの『文』の終わりには『;』をつけるのが文法上のルールになっています。

そんでもって「『文』ってなにそれ?」ってお話なんですが、プログラム言語ではひとつのまとまった処理を『文』と呼んだりします。例えば上記の場合だと『echo』を使って『Hello world』を出力していますよね。小さい世界で考えるとこの処理はこれで完結しています。なので完結した部分、つまり『'Hello world'』のおしりに『;』を付ければOKです。注意点としてプログラム言語によって『文』の定義が多少違ったりします。そこは気をつけてください。

(´-`).。oO(ちなみに『文』という言葉は参考書などで出てくるだけです...現場ではまず出てきません...)

そしてPHPでは『文』の終わりに必ず『;』を付ける必要があります。例えば以下の処理をみてください。『;』を抜いてみました。

<?php
echo 'Hello world'

これを実行するとどうなるのか、というとさっぱり動かなかったりします。この『;』忘れが初心者の方が超はまりやすいポイントになります。

プログラミングを何十年も続けると『;』抜けとかの記述ミスは一瞬で気づけるようになるんですが、結局は一文字あるかないか、という話なので慣れていないと中々見つけづらいところです。なので慣れないうちは「少し記述したらすぐ実行させてみて、問題なく動いたら次の処理の記述に進む。」という癖を付けると良いかもしれませんね。

(´-`).。oO(最近では『;』を書く必要がない言語が多くなってきましたね...)

先ほど文の終わりには必ず『;』を付けないといけない、と言いましたが実はPHPブロックの終了タグの直前の『文』に限り『;』を省略することができます。

<?php // これはちゃんと動きます。
echo 'Hello world'
?>

ただし、『;』抜けごときでバグを引き起こして余計な時間を取られてしまったりするととっても切ない気持ちになってしまうので、省略できるできないに関わらず『;』はちゃんと記述しておくようにしておくと良いかもしれません。

PHPでは『;』を書けば『文』の終わりとして認識してくれるので、逆に言えば『;』を書けば一行で複数の『文』(処理)を書くこともできます。

<?php
echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';echo '逃げちゃダメだ。';

まあ読みづらいだけなので書こうと思えば書ける、という程度の認識に留めておきましょう。『文』の終わりにはちゃんと改行をいれてあげるのがベストでございます。

では続きましてPHPにおいての半角スペースとかタブ文字とか改行とかの扱いについてです。PHPでは半角スペースとタブ文字と改行についてはいい感じで無視してくれるのでいくらでも記述することができます。

なのでハートフルな時はこんな感じでハート型にしてみたりすることもできますが、

<?php
      echo 'すき';                   echo 'すき';
     echo '愛してる';          echo '愛してる';
        echo '愛してる';    echo '愛してる';
            echo '愛してるよ、だいすきだよ';
              echo '愛してるよ結婚しよう';
                 echo 'だいすきだよ';
                    echo 'すきだ';
                        echo '';

読みづらいだけなのでやめましょう。

半角スペースとタブ文字と改行は無視してくれる、というわけなので自由に『インデント』をさせて記述することができます。なのでご自身が読みやすいようにソースコードを整形すると良いでしょう。

『インデント』のそもそもの意味は『字下げ』という意味なんですが、プログラムにおいての『インデント』はプログラムの記述を半角スペース、タブ文字、改行などを駆使して読みやすくすることを指します。

例えば以下の記述はとっても読みづらいですが、

<?php
$key=[0,1,2,3,4,5,6,7,8];$cnt=count($key);for($i = 0; $i < $cnt; ++$i){echo $i .' 回目の出力です。';}

『インデント』を行えばすっきり読みやすくなります。

<?php
$key = [0, 1, 2, 3, 4, 5, 6, 7, 8];
$cnt = count($key);
for($i = 0; $i < $cnt; ++$i){
	echo $i . ' 回目の出力です。';
}

プログラム言語においての『インデント』は好みがはっきり別れるところでもあります。なのでちょっと困ったら現場の先輩の『インデント』を参考にしたり、現場に『コーディングルール』があるならば、それにしたがって書くと良いでしょう。

『コーディングルール』とは現場で定められたプログラムを記述する際のルールといったところです。

大規模開発において、『コーディングルール』がないと人によって書き方が違ったり処理のさせ方が違ったりしてして統一性がなくなってしまい色々と面倒くさいことになるので大規模な開発を行っている企業さんでは大体『コーディングルール』というものが用意されています。

『コーディングルール』には「『インデント』はこういう風に行ってください」とか「変数名はこうしてください」とか色々な形があります。

もし変なルールが指定されていたらそれを指摘するのもよし、『コーディングルール』に追加したい項目があれば提案するもよし、より良い『コーディングルール』はプログラム言語に精通しているプログラマーでしか作れないのでそういう提案をするのもプログラマーの仕事だったりします。

というわけで以上となります。

続いての記事ではPHPでのエラーについて色々やっていきましょう。ではこの辺で。またお会いしましょう。

This article was written by Sakurama.

Author's beloved small mammal

桜舞 春人 Sakurama Haruto

A Tokyo-based programmer who has been creating various content since the ISDN era, with a bit of concern about his hair. A true long sleeper who generally feels unwell without at least 10 hours of sleep. His dream is to live a life where he can sleep as much as he wants. Loves games, sports, and music. Please share some hair with him.

If you find any errors or copyright issues, please .