初心者でもわかる!PHP閉じタグの正しい使い方と応用例10選

PHP閉じタグの正しい使い方と応用例を解説する記事のイメージPHP
この記事は約7分で読めます。

 

【サイト内のコードはご自由に個人利用・商用利用いただけます】

この記事では、プログラムの基礎知識を前提に話を進めています。

説明のためのコードや、サンプルコードもありますので、もちろん初心者でも理解できるように表現してあります。

基本的な知識があればカスタムコードを使って機能追加、目的を達成できるように作ってあります。

※この記事は、一般的にプロフェッショナルの指標とされる『実務経験10,000時間以上』を凌駕する現役のプログラマチームによって監修されています。

サイト内のコードを共有する場合は、参照元として引用して下さいますと幸いです

※Japanシーモアは、常に解説内容のわかりやすさや記事の品質に注力しております。不具合、分かりにくい説明や不適切な表現、動かないコードなど気になることがございましたら、記事の品質向上の為にお問い合わせフォームにてご共有いただけますと幸いです。
(送信された情報は、プライバシーポリシーのもと、厳正に取扱い、処分させていただきます。)

はじめに

この記事を読むと、あなたはPHPの閉じタグについての理解が深まり、正しい使い方や応用例を学ぶことができます。

初心者でも安心して学べるように、基本的な使い方から、さまざまな応用例まで、具体的なサンプルコードを交えて詳しく解説します。

●PHP閉じタグの基本

PHPコードは基本的に <?php で始まり、 ?> で終わります。

これがPHPの閉じタグです。

しかし、PHP閉じタグの使い方には注意点があります。それについては後述します。

○PHP閉じタグの基本的な使い方

最も基本的なPHPの閉じタグの使い方を見ていきましょう。

<?php
echo "Hello, World!";
?>

ここで <?php はPHPの開始タグ、?> はPHPの閉じタグと呼ばれます。

PHPコードが始まるところと終わるところを明示します。

●PHP閉じタグの使い方

PHPコードを書くとき、最初に開始タグ<?phpを記述し、その後に書いたPHPのコードを閉じるために閉じタグ?>を使用します。

この基本的な使い方を次のサンプルコードで確認しましょう。

○サンプルコード1:基本的なPHP閉じタグの使用方法

<?php
echo "Hello, World!";
?>

このコードでは、echo関数を使って文字列Hello, World!を出力するコードを紹介しています。

この例では、開始タグ<?phpと閉じタグ?>を使ってPHPコードを囲んでいます。

また、echo関数によって指定された文字列がブラウザに表示されます。

○サンプルコード2:PHP閉じタグなしのスクリプト

しかし、全てのPHPコードが閉じタグを必要とするわけではありません。

特に、ファイル全体がPHPで書かれている場合、閉じタグは省略することが推奨されています。

<?php
echo "Hello, World!";

このコードでは、閉じタグなしでecho関数を使って文字列Hello, World!を出力しています。

PHPコードがファイル全体を占める場合、余計な空白や改行を防ぐために閉じタグを省略します。

○サンプルコード3:PHP閉じタグとHTMLの組み合わせ

PHPはHTML内に直接埋め込むことが可能です。

その場合、開始タグと閉じタグを使ってPHPコード部分を明示します。

<!DOCTYPE html>
<html>
<body>
<h1>My first PHP page</h1>

<?php
echo "Hello, World!";
?>

</body>
</html>

このコードでは、HTMLのドキュメント内でPHPのecho関数を使ってHello, World!という文字列を出力しています。

この例では、HTMLとPHPが混在する文書において、どの部分がPHPのコードかを明示するために、PHP閉じタグが重要な役割を果たしています。

●PHP閉じタグの応用例

それでは、閉じタグを用いた具体的な応用例について見ていきましょう。

PHPコードは単に文字列を出力するだけでなく、条件分岐やループ、関数の定義、クラスの作成など、多様な機能を持っています。

それぞれの場合での閉じタグの使い方を以下のサンプルコードを通じて確認します。

○サンプルコード4:条件分岐とPHP閉じタグ

このコードでは、if文を使って条件分岐を行っています。

変数$ageに18が代入されており、成人か未成年かを判断して出力しています。

この例では、条件分岐の中でそれぞれの条件に応じたメッセージを出力しています。

<?php
$age = 18;

if ($age >= 20) {
    echo "成人です。";
} else {
    echo "未成年です。";
}
?>

○サンプルコード5:ループとPHP閉じタグ

このコードでは、forループを使って5回繰り返し処理を行っています。

ループの中で、現在の繰り返し回数を表示しています。この例では、1から5までの数値を順番に出力しています。

<?php
for ($i = 1; $i <= 5; $i++) {
    echo "繰り返し回数:{$i}<br>";
}
?>

○サンプルコード6:関数とPHP閉じタグ

このコードでは、sayHelloという関数を定義しています。

引数$nameを受け取り、挨拶文を返す関数です。

この例では、関数に”山田”という名前を渡して、挨拶文を出力しています。

<?php
function sayHello($name) {
    return "こんにちは、{$name}さん!";
}

echo sayHello("山田");
?>

○サンプルコード7:クラスとPHP閉じタグ

このコードでは、Personというクラスを定義しています。

このクラスには$nameプロパティとsayHelloメソッドがあります。

この例では、クラスのインスタンスを作成し、名前を代入して挨拶文を出力しています。

<?php
class Person {
    public $name;

    public function sayHello() {
        echo "こんにちは、{$this->name}さん!";
    }
}

$person = new Person();
$person->name = "佐藤";
$person->sayHello();
?>

○サンプルコード8:エラーハンドリングとPHP閉じタグ

このコードでは、trycatchを使ってエラーハンドリングを行っています。

ゼロ除算エラーが発生する場合、例外処理が実行され、エラーメッセージが出力されます。

この例では、エラーが発生した際に対処する方法を示しています。

<?php
try {
    $result = 10 / 0;
} catch (DivisionByZeroError $e) {
    echo "ゼロ除算エラーが発生しました。";
}
?>

○サンプルコード9:データベース接続とPHP閉じタグ

このコードでは、PDOを使ってMySQLデータベースに接続しています。

この例では、データベースへの接続情報を指定し、新しいPDOインスタンスを作成しています。

接続が成功すれば「データベースに接続しました。」と表示し、接続に失敗した場合はエラーメッセージを出力します。

<?php
$dsn = 'mysql:host=localhost;dbname=testdb;charset=utf8';
$user = 'username';
$password = 'password';

try {
    $dbh = new PDO($dsn, $user, $password);
    echo "データベースに接続しました。";
} catch (PDOException $e) {
    echo "接続エラー: " . $e->getMessage();
}
?>

○サンプルコード10:フォーム処理とPHP閉じタグ

このコードでは、POSTメソッドで送信されたデータを処理しています。

この例では、HTMLフォームから送信されたデータを取得し、そのデータを元にメッセージを出力しています。

<?php
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $name = $_POST['name'];
    echo "こんにちは、{$name}さん!";
}
?>

<form method="post">
    <input type="text" name="name">
    <input type="submit" value="送信">
</form>

●注意点と対処法

PHPの閉じタグは省略可能です。

しかし、閉じタグがない場合、HTMLなどのコードがその後に続くと、予期せぬエラーや問題が発生する可能性があります。

そのため、PHPコードが終了する箇所には必ず閉じタグを書くことをおすすめします。

まとめ

この記事では、PHPの閉じタグの使い方とそれを活用したサンプルコードをご紹介しました。

閉じタグはコードの見通しを良くし、エラーを防ぐ役割も果たします。

適切な使い方を理解し、日々の開発に活かしてください。