<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>switch | Seek Rise</title>
	<atom:link href="https://seek-rise.com/tag/switch/feed/" rel="self" type="application/rss+xml" />
	<link>https://seek-rise.com</link>
	<description></description>
	<lastBuildDate>Sun, 28 Dec 2025 18:03:38 +0000</lastBuildDate>
	<language>ja</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://seek-rise.com/wp-content/uploads/2019/10/cropped-favicon-32x32.png</url>
	<title>switch | Seek Rise</title>
	<link>https://seek-rise.com</link>
	<width>32</width>
	<height>32</height>
</image> 
<atom:link rel="hub" href="https://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="https://pubsubhubbub.superfeedr.com"/><atom:link rel="hub" href="https://websubhub.com/hub"/><site xmlns="com-wordpress:feed-additions:1">167377966</site>	<item>
		<title>6-5 PHPの条件分岐（elseif / switch）</title>
		<link>https://seek-rise.com/web-development/php-basic/post-417/</link>
					<comments>https://seek-rise.com/web-development/php-basic/post-417/#respond</comments>
		
		<dc:creator><![CDATA[NOA（ノア）]]></dc:creator>
		<pubDate>Mon, 22 Dec 2025 12:59:40 +0000</pubDate>
				<category><![CDATA[Web開発学習ロードマップ]]></category>
		<category><![CDATA[6.PHP基礎]]></category>
		<category><![CDATA[Web開発]]></category>
		<category><![CDATA[初心者]]></category>
		<category><![CDATA[PHP基礎]]></category>
		<category><![CDATA[PHP条件分岐]]></category>
		<category><![CDATA[elseif]]></category>
		<category><![CDATA[switch]]></category>
		<guid isPermaLink="false">https://seek-rise.com/?p=417</guid>

					<description><![CDATA[前の記事では、if / else を使った基本的な条件分岐 を学びました。 しかし実際の処理では、 ・条件が2つ以上ある・場合分けが増えてくる というケースがほとんどです。 そのような場合に使うのが、elseif と s [&#8230;]]]></description>
										<content:encoded><![CDATA[<p data-start="263" data-end="307">前の記事では、<br data-start="270" data-end="273" /><strong data-start="273" data-end="299">if / else を使った基本的な条件分岐</strong> を学びました。</p>
<p data-start="309" data-end="320">しかし実際の処理では、</p>
<p data-start="322" data-end="348">・条件が2つ以上ある<br data-start="332" data-end="335" />・場合分けが増えてくる</p>
<p data-start="350" data-end="364">というケースがほとんどです。</p>
<p data-start="366" data-end="409">そのような場合に使うのが、<br data-start="379" data-end="382" /><strong data-start="382" data-end="392">elseif</strong> と <strong data-start="395" data-end="405">switch</strong> です。</p>
<p data-start="411" data-end="456">この記事では、<br data-start="418" data-end="421" /><strong data-start="421" data-end="439">複数条件を扱うための条件分岐</strong> を<br data-start="441" data-end="444" />コード付きで整理します。</p>
<hr data-start="458" data-end="461" />

  <div id="toc" class="toc tnt-number toc-center tnt-number border-element"><input type="checkbox" class="toc-checkbox" id="toc-checkbox-2" checked><label class="toc-title" for="toc-checkbox-2">目次</label>
    <div class="toc-content">
    <ol class="toc-list open"><li><a href="#toc1" tabindex="0">この記事で学べること</a></li><li><a href="#toc2" tabindex="0">elseif とは何か</a></li><li><a href="#toc3" tabindex="0">elseif の基本的な書き方</a><ol><li><a href="#toc4" tabindex="0">サンプルコード①：elseif の基本</a></li><li><a href="#toc5" tabindex="0">コードの読み解き</a></li></ol></li><li><a href="#toc6" tabindex="0">elseif を使うときの重要な考え方</a></li><li><a href="#toc7" tabindex="0">フォーム処理での実用例</a><ol><li><a href="#toc8" tabindex="0">サンプルコード②：入力値による分岐</a></li></ol></li><li><a href="#toc9" tabindex="0">switch とは何か</a></li><li><a href="#toc10" tabindex="0">switch の基本構造</a><ol><li><a href="#toc11" tabindex="0">サンプルコード③：switch の基本</a></li><li><a href="#toc12" tabindex="0">コードの読み解き</a></li></ol></li><li><a href="#toc13" tabindex="0">break を忘れるとどうなるか</a><ol><li><a href="#toc14" tabindex="0">サンプルコード④：break を忘れた例</a></li></ol></li><li><a href="#toc15" tabindex="0">if / elseif と switch の使い分け</a></li><li><a href="#toc16" tabindex="0">実務ではどちらが多いか</a></li><li><a href="#toc17" tabindex="0">初心者がよくやるミス</a></li><li><a href="#toc18" tabindex="0">まとめ</a></li><li><a href="#toc19" tabindex="0">次に読むべき記事</a></li></ol>
    </div>
  </div>

<h2 data-start="463" data-end="476"><span id="toc1">この記事で学べること</span></h2>
<p data-start="478" data-end="562">・elseif の書き方と使いどころ<br data-start="496" data-end="499" />・switch 文の基本構造<br data-start="513" data-end="516" />・if / elseif と switch の使い分け<br data-start="543" data-end="546" />・実務でよくある分岐パターン</p>
<hr data-start="564" data-end="567" />
<h2 data-start="569" data-end="583"><span id="toc2">elseif とは何か</span></h2>
<p data-start="585" data-end="626">elseif は、<br data-start="594" data-end="597" /><strong data-start="597" data-end="619">複数の条件を順番にチェックしたい場合</strong> に使います。</p>
<p data-start="628" data-end="639">考え方はシンプルです。</p>
<p data-start="641" data-end="678">・最初の条件がダメなら<br data-start="652" data-end="655" />・次の条件を見る<br data-start="663" data-end="666" />・それもダメなら次…</p>
<p data-start="680" data-end="688">という流れです。</p>
<hr data-start="690" data-end="693" />
<h2 data-start="695" data-end="713"><span id="toc3">elseif の基本的な書き方</span></h2>
<h3 data-start="715" data-end="738"><span id="toc4">サンプルコード①：elseif の基本</span></h3>
<div class="contain-inline-size rounded-2xl corner-superellipse/1.1 relative bg-token-sidebar-surface-primary">
<pre class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-php"><span class="hljs-meta">&lt;?php</span>
<span class="hljs-variable">$score</span> = <span class="hljs-number">75</span>;

<span class="hljs-keyword">if</span> (<span class="hljs-variable">$score</span> &gt;= <span class="hljs-number">80</span>) {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'とても良い'</span>;
} <span class="hljs-keyword">elseif</span> (<span class="hljs-variable">$score</span> &gt;= <span class="hljs-number">60</span>) {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'合格'</span>;
} <span class="hljs-keyword">else</span> {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'不合格'</span>;
}
</code></pre>
</div>
<hr data-start="872" data-end="875" />
<h3 data-start="877" data-end="889"><span id="toc5">コードの読み解き</span></h3>
<p data-start="891" data-end="935">・80点以上 → とても良い<br data-start="905" data-end="908" />・60点以上 → 合格<br data-start="919" data-end="922" />・それ以外 → 不合格</p>
<p data-start="937" data-end="983">上から順番に条件を評価し、<br data-start="950" data-end="953" /><strong data-start="953" data-end="974">最初に true になった処理だけ</strong> が実行されます。</p>
<hr data-start="985" data-end="988" />
<h2 data-start="990" data-end="1012"><span id="toc6">elseif を使うときの重要な考え方</span></h2>
<p data-start="1014" data-end="1050">elseif を使うときは、<br data-start="1028" data-end="1031" /><strong data-start="1031" data-end="1046">条件の順番が非常に重要</strong> です。</p>
<p data-start="1052" data-end="1056">例えば、</p>
<p data-start="1058" data-end="1075">・60点以上<br data-start="1064" data-end="1067" />・80点以上</p>
<p data-start="1077" data-end="1106">という順番で書くと、<br data-start="1087" data-end="1090" />80点以上の条件に到達しません。</p>
<p data-start="1108" data-end="1136">「どの条件を先に評価すべきか」<br data-start="1123" data-end="1126" />を必ず考えましょう。</p>
<hr data-start="1138" data-end="1141" />
<h2 data-start="1143" data-end="1157"><span id="toc7">フォーム処理での実用例</span></h2>
<p data-start="1159" data-end="1203">elseif は、<br data-start="1168" data-end="1171" />入力内容に応じて<br data-start="1179" data-end="1182" />メッセージを変えたいときによく使われます。</p>
<h3 data-start="1205" data-end="1226"><span id="toc8">サンプルコード②：入力値による分岐</span></h3>
<div class="contain-inline-size rounded-2xl corner-superellipse/1.1 relative bg-token-sidebar-surface-primary">
<pre class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-php"><span class="hljs-meta">&lt;?php</span>
<span class="hljs-variable">$age</span> = <span class="hljs-variable">$_POST</span>[<span class="hljs-string">'age'</span>] ?? <span class="hljs-number">0</span>;

<span class="hljs-keyword">if</span> (<span class="hljs-variable">$age</span> &gt;= <span class="hljs-number">20</span>) {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'成人です'</span>;
} <span class="hljs-keyword">elseif</span> (<span class="hljs-variable">$age</span> &gt;= <span class="hljs-number">18</span>) {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'18歳以上です'</span>;
} <span class="hljs-keyword">else</span> {
  <span class="hljs-keyword">echo</span> <span class="hljs-string">'18歳未満です'</span>;
}
</code></pre>
</div>
<hr data-start="1378" data-end="1381" />
<h2 data-start="1383" data-end="1397"><span id="toc9">switch とは何か</span></h2>
<p data-start="1399" data-end="1439">switch は、<br data-start="1408" data-end="1411" /><strong data-start="1411" data-end="1432">特定の値によって処理を分けたい場合</strong> に使います。</p>
<p data-start="1441" data-end="1452">elseif と違い、</p>
<p data-start="1454" data-end="1470">・同じ変数<br data-start="1459" data-end="1462" />・決まった値</p>
<p data-start="1472" data-end="1487">で分岐する場合に向いています。</p>
<hr data-start="1489" data-end="1492" />
<h2 data-start="1494" data-end="1509"><span id="toc10">switch の基本構造</span></h2>
<h3 data-start="1511" data-end="1534"><span id="toc11">サンプルコード③：switch の基本</span></h3>
<div class="contain-inline-size rounded-2xl corner-superellipse/1.1 relative bg-token-sidebar-surface-primary">
<pre class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-php"><span class="hljs-meta">&lt;?php</span>
<span class="hljs-variable">$day</span> = <span class="hljs-string">'月'</span>;

<span class="hljs-keyword">switch</span> (<span class="hljs-variable">$day</span>) {
  <span class="hljs-keyword">case</span> <span class="hljs-string">'月'</span>:
    <span class="hljs-keyword">echo</span> <span class="hljs-string">'月曜日です'</span>;
    <span class="hljs-keyword">break</span>;
  <span class="hljs-keyword">case</span> <span class="hljs-string">'火'</span>:
    <span class="hljs-keyword">echo</span> <span class="hljs-string">'火曜日です'</span>;
    <span class="hljs-keyword">break</span>;
  <span class="hljs-keyword">default</span>:
    <span class="hljs-keyword">echo</span> <span class="hljs-string">'その他の曜日です'</span>;
}
</code></pre>
</div>
<hr data-start="1699" data-end="1702" />
<h3 data-start="1704" data-end="1716"><span id="toc12">コードの読み解き</span></h3>
<p data-start="1718" data-end="1801">・$day の値をチェック<br data-start="1731" data-end="1734" />・一致した case の処理を実行<br data-start="1751" data-end="1754" />・break で switch を抜ける<br data-start="1774" data-end="1777" />・どれにも当てはまらなければ default</p>
<hr data-start="1803" data-end="1806" />
<h2 data-start="1808" data-end="1827"><span id="toc13">break を忘れるとどうなるか</span></h2>
<p data-start="1829" data-end="1881">switch 文では、<br data-start="1840" data-end="1843" /><strong data-start="1843" data-end="1867">break を忘れると処理が続いてしまう</strong><br data-start="1867" data-end="1870" />という特徴があります。</p>
<h3 data-start="1883" data-end="1907"><span id="toc14">サンプルコード④：break を忘れた例</span></h3>
<div class="contain-inline-size rounded-2xl corner-superellipse/1.1 relative bg-token-sidebar-surface-primary">
<pre class="overflow-y-auto p-4" dir="ltr"><code class="whitespace-pre! language-php"><span class="hljs-meta">&lt;?php</span>
<span class="hljs-variable">$day</span> = <span class="hljs-string">'月'</span>;

<span class="hljs-keyword">switch</span> (<span class="hljs-variable">$day</span>) {
  <span class="hljs-keyword">case</span> <span class="hljs-string">'月'</span>:
    <span class="hljs-keyword">echo</span> <span class="hljs-string">'月曜日です'</span>;
  <span class="hljs-keyword">case</span> <span class="hljs-string">'火'</span>:
    <span class="hljs-keyword">echo</span> <span class="hljs-string">'火曜日です'</span>;
}
</code></pre>
</div>
<p data-start="2018" data-end="2023">この場合、</p>
<p data-start="2025" data-end="2040">・「月曜日です火曜日です」</p>
<p data-start="2042" data-end="2050">と表示されます。</p>
<p data-start="2052" data-end="2071">初心者が最もハマりやすいポイントです。</p>
<hr data-start="2073" data-end="2076" />
<h2 data-start="2078" data-end="2107"><span id="toc15">if / elseif と switch の使い分け</span></h2>
<p data-start="2109" data-end="2122">目安としては次の通りです。</p>
<p data-start="2124" data-end="2155">・範囲や条件で分岐したい<br data-start="2136" data-end="2139" />　→ if / elseif</p>
<p data-start="2157" data-end="2182">・値が決まっている場合<br data-start="2168" data-end="2171" />　→ switch</p>
<p data-start="2184" data-end="2220">無理に統一する必要はなく、<br data-start="2197" data-end="2200" /><strong data-start="2200" data-end="2212">読みやすさを優先</strong> してください。</p>
<hr data-start="2222" data-end="2225" />
<h2 data-start="2227" data-end="2241"><span id="toc16">実務ではどちらが多いか</span></h2>
<p data-start="2243" data-end="2248">実務では、</p>
<p data-start="2250" data-end="2267">・入力チェック<br data-start="2257" data-end="2260" />・数値判定</p>
<p data-start="2269" data-end="2290">では if / elseif が多く、</p>
<p data-start="2292" data-end="2313">・ステータス判定<br data-start="2300" data-end="2303" />・種別コード判定</p>
<p data-start="2315" data-end="2334">では switch がよく使われます。</p>
<hr data-start="2336" data-end="2339" />
<h2 data-start="2341" data-end="2354"><span id="toc17">初心者がよくやるミス</span></h2>
<p data-start="2356" data-end="2370">複数条件分岐で多いミスです。</p>
<p data-start="2372" data-end="2425">・条件の順番を考えていない<br data-start="2385" data-end="2388" />・break を書き忘れる<br data-start="2401" data-end="2404" />・switch で条件式を書こうとする</p>
<p data-start="2427" data-end="2458">「この分岐は何を基準にしているか」<br data-start="2444" data-end="2447" />を常に意識しましょう。</p>
<hr data-start="2460" data-end="2463" />
<h2 data-start="2465" data-end="2471"><span id="toc18">まとめ</span></h2>
<p data-start="2473" data-end="2493">この記事では、<br data-start="2480" data-end="2483" />複数条件を扱うための</p>
<p data-start="2495" data-end="2514">・elseif<br data-start="2502" data-end="2505" />・switch</p>
<p data-start="2516" data-end="2531">の基本的な使い方を学びました。</p>
<p data-start="2533" data-end="2574">条件分岐が書けるようになると、<br data-start="2548" data-end="2551" /><strong data-start="2551" data-end="2567">プログラムが一気に実用的</strong> になります。</p>
<p data-start="2576" data-end="2614">次は、<br data-start="2579" data-end="2582" />繰り返し処理を使って<br data-start="2592" data-end="2595" />同じ処理を効率よく書く方法に進みます。</p>
<hr data-start="2616" data-end="2619" />
<h2 data-start="2621" data-end="2632"><span id="toc19">次に読むべき記事</span></h2>
<p data-start="2634" data-end="2674">▶ 次の記事<br data-start="2640" data-end="2643" /><a href="https://seek-rise.com/web-development/php-basic/post-420/">6-6 PHPで繰り返し処理（for / foreach）</a></p>
<p data-start="2676" data-end="2710">▶ 関連記事<br data-start="2682" data-end="2685" /><a href="https://seek-rise.com/web-development/php-basic/post-411/">6-4 PHPの条件分岐（if / else）</a></p>
]]></content:encoded>
					
					<wfw:commentRss>https://seek-rise.com/web-development/php-basic/post-417/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
		<post-id xmlns="com-wordpress:feed-additions:1">417</post-id>	</item>
	</channel>
</rss>
