PHP入門

elseif構文

全333コースを10日間無料で

ぜひご覧ください。

無料で視聴する すべての加入プランを見る
または
if構文は、2つに道が分かれる構文です。しかし、分岐では3つ以上に処理が分かれることなどもよくあります。そんなときに使われるのがelseif構文です。ここでは、elseif構文の使い方を紹介していきましょう。
講師:
11:38

字幕

ここでは elseif 構文としまして1つ前のレッスンで紹介したif 構文の応用的な使い方であるelseif という構文についてご紹介していきたいと思います。今、画面に表示されているのは1つ前のレッスンで紹介した if 構文です。If 構文というのはこの様に2つの処理を書いてそのいずれか1つを処理させるという分岐の構造でしたけれど必ずしも2つだけに分けれるという訳にはいきません。そこで3つに分ける、4つに分けるという様に複数の分岐を作る時に使うのがelseif 構文や switch 構文になります。では早速、作っていきたいと思います。まずは MAMP のアップロード先フォルダMAMP フォルダの htdocs の中にフォルダを1つ作ります。ここでは lesson03-07 ということででは、早速こちらにファイルを作っていきましょう。MAMP の htdocs の中に1つフォルダを作ります。lesson03-07 という事でこちらにテンプレートのファイル文をコピーしていきます。ここでは、この index.html はそのままのファイル名で使いますのでDreamWeaver で編集していきます。 では、ここではまず elseif 構文という風に記述しましてこちらに elseif 構文という風に入れ更にこの中にまずは form を作っていきましょう。form action 属性は空にします。method 属性を post としまして、ここではテキストエリアを1つ作っていきます。例えば「年齢」というテキストボックスでここに input で type の textname は age とします。そして size を 10 ぐらいにしまして続いてここには submit ボタンを設置します。年齢というのは、前のレッスンでやりましたが数字だけが入力できるようにするためにドロップダウンなどにする方が適切である、と紹介しました。ここでは、ちょっとドロップダウンを作るのに手間が掛かってしまうのでテキストエリアにしていますが勿論ドロップダウンにしても構いませんので是非ちょっとチャレンジしてみてください。では、こちらで一度画面を確認してみましょう。MAMP を起動して頂いてApache が起動している状態を確認したらWeb ブラウザで lesson03-07 となります。そして index.html メイルこちらに行きますとelseif 構文ということで年齢が記入できるようになります。 例えばここで、こちら入力する年齢は10 よりも下の場合つまり9以下の場合は、例えば何か商品が購入できない、とします。そして 20 歳以下の場合には割引料金が適用される、とします。それ以上の場合は特に問題なく特別な処理もなく例えば、何か商品が購入できたりというフォームだと仮定しましょう。10 歳よりも下10 歳未満は購入できない20 歳以下は割引料金が適用されるという事でスクリプトを組んで行きたいと思います。では1つ新しいファイルを作って頂いてPHP でレイアウトはなしそしてドキュメントタイプは適当な状態で内容を全て削除します。そして今、作った HTML をコピーしてこの content の中です。一番基本的なメッセージとしては「商品が購入されました」というメッセージが表示されるようにします。そして10 歳以下の場合は「商品が購入できません」というメッセージを出したいのでここは1つ前のレッスンと同様です。if 構文としまして $_POST の age が10歳よりも下、という事でこちらの < 記号が使われます。ここで、この様に囲って「10歳未満の方は購入できません」というメッセージを出力してみたいと思います。 ここで1つ前のレッスンまでの if 構文の場合ここでは else と続けていましたがここでは少し違う elseif という形で繋いでいきたいと思います。そして $_POST age は変わりません。続いて、この様に<=20 とします。この場合、今度は 20 以下入力された年齢が 20 以下の場合という条件ができていますので同じ様に : で繋ぎます。そしてここには「割引料金で購入されました」という形でメッセージを表示しましょう。後は最後に else という 前のレッスンでも使ったもので繋いであげます。そして「商品が購入されました」の最後の所には endif と繋いでいきます。さて、この様に if 構文に1つ elseif という新しいものが加わっていますが基本的な構造は変わりません。if 構文があって1つ挟んでます。elseif があって、又1つ挟まれelse があって1つ挟まれ最後 endif で終わる、という形です。では、こちらのスクリプト動きを確認してみましょう。lesson03-07 という所にここでは input_do.php というファイル名で保存します。そして index.htmel の action 属性 にもinput_do.php という形でファイル名を指定していきます。 これで index.htmel と input_do は接続されましたのでブラウザで動きを確認してみましょう。ではこちらのフォームの画面を再読み込みしましてまずは年齢として例えば8歳と入力します。「送信する」ボタンをクリックしますと「10 歳未満の方は購入できません」という風に表示されました。これは1や9などでも同じ様にメッセージが出ます。しかし年齢が 10 の場合は送信すると割引料金で購入されます。そして例えば 15 ですとか 19 やそれから 20 などでも割引料金で購入することができます。そして 21 になりますと、この様に「商品が購入されました」ということで割引料金が適用されず買えない事もなく普通に購入できます。ではスクリプトの内容をもう一度詳しく見ていきましょう。ここでは、まず最初に if 構文が処理されます。$_POST age の値が10 未満10 よりも下の場合という比較演算子が使われています。その場合1つ目のこちらの p 要素が出力されます。「10 歳未満の方は購入できません」です。そして $_POST の age が10 以上になった場合10 よりも上になった場合はこの1行目は処理されずに次の行にジャンプします。 次の行は elseif となっていて$_POST の age となっています。今度は 20 以下というこちらの比較演算子が使われていますが、10 よりも上でいわゆる 10 以上で 20 以下の場合はここの elseif で引っかかります。そして「割引料金で購入されました」と出まして10 以下でもなく20 以下でもない場合には最後のこちらの else ということで「商品が購入されました」までジャンプすることになる、という事で段階が何段階かあるというスクリプトを作ることができました。ここでなぜ elseif を使っているのかつまり、例えば今までのようにここには ifend の他に endif としてこの様に書いた場合ちなみに else というのは必要なければ省略することができます。ここでは if が 10 よりも下の場合「10 歳未満の方は購入できません」でendif なので、これで一度 if 構文が終わっています。続いてこちら 20 以下の場合「割引料金で購入されました」「商品が購入されました」という様に2つ目の if 構文が始まっています。もし elseif を使わずにif 構文を一度切ってしまった場合どの様になるかというと動きが少し変わってしまいます。 実際に動かしてみましょう。例えばここでは 21 でいきますと「商品が購入されました」ということで正常に動いているように見えます。そして 15 の場合も正常に動いているように見えます。割引料金で購入されています。しかし例えば、9歳など10 未満の数字を入力した場合送信すると、おかしな事が起こります。「10 歳未満の方は購入できません」と出ているのにもかかわらず続けて「割引料金で購入されました」というメッセージが出てしまいました。これは、なぜこの様な事が起こったのかといいますとこの if 構文、age が 10 未満の場合「10 歳未満の方は購入できません」という処理は正しく実行されています。しかし、ここで「割引料金で購入されました」というのは出てはいけないメッセージです。ですがこの場合、ここの if 構文数値が 20 以下というのは10 よりも下の場合にも満たされてしまいます。9とか8とかの場合も20 よりも下ですのでこちらの if 構文満たされてしまう訳ですね。なので「割引料金で購入されました」というメッセージが出てしまうという訳です。そこで elseif という構文を使ってあげると、これは暗黙的にこの if 構文をクリアーした人だけがこちらの if 構文に辿りつく事ができますのでこれで 10 歳よりも下ではなくて且つ 20 歳以下である場合、という非常に複雑な条件を作っているということになります。 ちょっと見慣れるまでは非常にこちらのスクリプト難しく感じるかもしれませんがそれ程難しくありませんので是非、色々な条件を組み合わせて様々なスクリプトを作って慣れてみて頂くといいと思います。

PHP入門

このコースでは動きのあるWebサイトでショッピング、友人との写真を共有、キーワードによる情報検索など便利な仕組みを作るための技術であるPHPについて解説します。これまでプログラミングに触れたことがない方でも、ちょっとしたプログラムを自分で作ることができるようになります。

4時間56分 (29 ビデオ)
現在、カスタマーレビューはありません…
 
ソフトウェア・トピック
価格: 3,990
発売日:2014年01月29日

このコースは、「オンデマンド」でご利用可能であり、ダウンロードすることもオンラインで見ることもできます。

ダウンロードすると、オフラインでコースを使用し、豊富なインターフェースをフルに活用できます。複数のデバイスを使用したり、 一度に全コースをダウンロードしたくない場合は、アカントにログインして、ストリーミング・ビデオとしてコースのレッスンを視聴してください。

ビデオトレーニングをお楽しみいただけますように! お問い合わせは、cs-jp@lynda.com宛までご連絡ください。