読み込み中...

PHPで理解すべき“Void”の7つのポイント

PHPで"void"を使いこなすためのガイド記事のサムネイル画像 PHP
この記事は約9分で読めます。

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

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

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

本記事のサンプルコードを活用して機能追加、目的を達成できるように作ってありますので、是非ご活用ください。

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

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

はじめに

PHPで”void”を使いこなすための全知識を紹介するこの記事を読むことで、”void”という概念の理解と活用方法が身につくことでしょう。

“void”はPHPの重要な部分であり、その理解と適切な使用方法は、PHPのコーディングスキルを向上させるために不可欠です。

本記事では、”void”の基本的な概念から詳細な使い方、そして具体的な応用例まで、具体的なサンプルコードと共に詳しく解説します。

それでは、”void”の世界へと一緒に踏み込んでいきましょう。

●”Void”とは: PHPの基本理解

“void”は、PHP7.1以降で使用可能な概念で、関数が何も返さないことを表すために使われます。

言い換えれば、関数が戻り値を持たないことを示すための機能です。

通常、PHPの関数は値を返すことが期待されますが、全ての関数が値を返すわけではありません。

そういった場合、関数の戻り値として”void”を指定することで、その関数が値を返さないことを明示することが可能です。

また、”void”は型宣言にも使用され、特定の関数が戻り値を返さないことを強制することができます。

●Void関数の作成方法

“void”を用いた関数の作成は非常に簡単です。

下記のサンプルコードでは、基本的な”void”関数を作成し、その使い方を表しています。

○サンプルコード1:Void関数の基本形

// 戻り値を返さない関数を作成します。
function hello() : void {
    echo "Hello, World!";
}

// 関数を呼び出します。
hello();

このコードでは、まずvoidを返す関数helloを定義しています。

この関数は単に文字列”Hello, World!”を出力しますが、何も返しません。

そのため、関数の定義に: voidを追加して、これが戻り値を返さない関数であることを明示しています。

関数を呼び出すと、”Hello, World!”というメッセージが表示されます。

しかし、もし関数から何かの値を取得しようとすると、何も得られません。

なぜなら、hello関数は”void”、つまり何も返さない関数だからです。

これが”void”関数の基本的な作り方と使い方です。

●Void関数の応用例

“void”関数は、それが単体で使用されるだけでなく、より複雑なコードの中に組み込むことで、その力を最大限に発揮します。

○サンプルコード2:Void関数でパラメータを使う

function sayHelloTo(string $name) : void {
    echo "Hello, " . $name . "!";
}

// 関数を呼び出し、"PHP"という文字列をパラメータとして渡します。
sayHelloTo("PHP");

このコードでは、文字列のパラメータを受け取り、そのパラメータを使ってメッセージを表示する”void”関数を作成しています。

関数を呼び出すときには、”PHP”という文字列をパラメータとして関数に渡します。

その結果、”Hello, PHP!”というメッセージが出力されます。しかし、この関数は戻り値を返さないので、値を取得することはできません。

○サンプルコード3:Void関数の入れ子構造

function outer() : void {
    echo "Outer function start.\n";

    function inner() : void {
        echo "Inner function.\n";
    }

    inner();

    echo "Outer function end.\n";
}

outer();

このコードでは、関数の内部で別の”void”関数を定義し、それを呼び出す例を表しています。

これは関数の入れ子構造と呼ばれ、一つの関数の内部で別の関数を使うことができます。

この例では、外側の関数outerが最初にメッセージを出力し、その後内側の関数innerを呼び出します。

内側の関数が終了したら、外側の関数が再度メッセージを出力します。

これにより、「Outer function start.」「Inner function.」「Outer function end.」の順にメッセージが出力されます。

以上のように、”void”関数は様々な方法で活用することができます。

基本的な使用法を理解した上で、具体的なコードの中でどのように使うことができるかを学び、自身のコーディングに活かしてみてください。

●Voidの詳細な使い方と注意点

“void”を使う際には、いくつか注意すべきポイントがあります。

それを理解するためには、”void”関数の詳細な使い方を理解することが重要です。

ここでは、戻り値を持たない関数の作り方と、”void”を使用した型宣言の強制について具体的なサンプルコードとともに説明します。

○サンプルコード4:戻り値を持たないVoid関数の作り方

function displayMessage(string $message) : void {
    echo $message . "\n";
}

// この関数はメッセージを表示するだけで、何も返さない
displayMessage("Hello, PHP!");

このコードでは、”void”を使用して戻り値を持たない関数を作成しています。

関数displayMessageは、引数としてメッセージを受け取り、それを出力します。

この関数を呼び出すときには、表示したいメッセージを引数として渡します。

この例では”Hello, PHP!”というメッセージが出力されます。

ただし、この関数は戻り値がないため、何か値を返すようなことはありません。

○サンプルコード5:Voidを使用した型宣言の強制

function setAge(int $age) : void {
    if ($age < 0) {
        echo "年齢は正の数でなければなりません。\n";
    } else {
        echo "あなたの年齢は " . $age . " 歳です。\n";
    }
}

setAge(25);
setAge(-1);

このコードでは、”void”を使って関数の戻り値の型を宣言し、その中で型チェックを行う例を紹介しています。関数setAgeでは、引数として年齢を受け取ります。

その年齢が0未満であればエラーメッセージを出力し、それ以外の場合は年齢を出力します。

この例では、まず25を引数に関数を呼び出すと、”あなたの年齢は 25 歳です。”と表示されます。

次に-1を引数に関数を呼び出すと、”年齢は正の数でなければなりません。”というエラーメッセージが表示されます。

“void”関数を使うことで、特定の処理を行いつつも何も返さない関数を作成することができます。

その一方で、注意すべきは”void”関数内から値を返そうとするとエラーが発生するということです。

したがって、”void”関数をうまく活用するためには、その特性を理解し、適切にコード内で使用することが重要です。

●Voidの対処法とカスタマイズ

“void”関数はその特性上、特定のエラーハンドリングやカスタマイズが必要な場合があります。

次に、それらの具体的な例をサンプルコードとともに見ていきましょう。

○サンプルコード6:Void関数内でのエラーハンドリング

function setPrice(int $price) : void {
    if ($price < 0) {
        throw new Exception("価格は正の数でなければなりません。");
    } else {
        echo "商品の価格は " . $price . " 円です。\n";
    }
}

try {
    setPrice(3000);
    setPrice(-1);
} catch (Exception $e) {
    echo 'エラー: ',  $e->getMessage(), "\n";
}

このコードでは、Void関数内でエラーハンドリングを行う一例を紹介しています。

関数setPriceは、引数として価格を受け取ります。

その価格が0未満であれば、Exceptionをスローし、それ以外の場合は価格を出力します。

この例では、まず3000を引数に関数を呼び出し、”商品の価格は 3000 円です。”と表示されます。

次に-1を引数に関数を呼び出すと、Exceptionがスローされ、”エラー: 価格は正の数でなければなりません。”というエラーメッセージが表示されます。

Void関数内でエラーハンドリングを行うことで、関数の処理中に何らかの問題が発生した場合でも適切に対処することができます。

このような手法を用いることで、安全性や信頼性を向上させることが可能になります。

○サンプルコード7:カスタムVoid関数の作り方

function customFunction(void $param) : void {
    // 何かの処理
}

// この関数は引数にも戻り値にもVoid型を指定しています。

このコードでは、カスタムVoid関数の作り方を紹介しています。

関数customFunctionでは、引数としてVoid型を受け取り、戻り値もVoid型としています。

しかし、実際にはPHPでは引数にVoid型を指定することはできません。

そのため、このコードは実際にはエラーを発生させます。

これは、Void型が「何も存在しない」ことを示す特別な型であるため、引数として受け取ることができないためです。

したがって、カスタムVoid関数を作成する場合でも、引数や戻り値の型指定には注意が必要です。

まとめ

本記事では、PHPでの”void”の理解すべき7つのポイントについて詳細に説明しました。

具体的な使い方やサンプルコードを交えて、初心者でも確実に理解できる内容を提供しました。

VoidはPHPで使用される特殊な型であり、これが指定された関数は戻り値を持ちません。

これは、関数が副作用のみを持つ場合や、何も返すべき情報がない場合に便利な機能です。

また、戻り値の型指定にVoidを使用することで、コードの読みやすさと理解しやすさを向上させることができます。

私たちはまた、Void関数をどのように作成するか、Void関数内でエラーハンドリングを行う方法、さらには型宣言を強制する方法についても説明しました。

それぞれの詳細なサンプルコードには、日本語での詳細な説明を添えています。

しかし、引数や戻り値の型指定には注意が必要であり、特にVoidは「何も存在しない」ことを表す特殊な型であるため、引数としてVoid型を受け取ることはできない点を強調しました。

以上の知識と理解をもとに、PHPのVoid関数を効果的に活用し、より高品質で理解しやすいコードを書くことができるようになります。

これらの知識は初心者だけでなく、経験豊富なプログラマーにとっても有益な情報となるでしょう。

この記事が、PHPでのVoidの使い方を理解し、あなたのコーディングスキルを向上させる手助けになることを期待しています。