PHPで引数を活用する5つのステップ!初心者でも分かる詳解ガイド

PHPの引数の使い方を解説する記事のサムネイルPHP
この記事は約6分で読めます。

 

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

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

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

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

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

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

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

はじめに

PHPの学習を進めているあなた。

関数を作る際に、引数をどのように使用すればいいのか疑問に思ったことはありませんか?

この記事を読むことで、PHPでの引数の使い方を把握し、それをどのように活用できるのかを理解することができるようになります。

●PHPと引数の基本

○PHPとは

PHPは、ウェブサイトの開発でよく使われるプログラミング言語の一つです。

HTML内に直接記述でき、サーバーサイドで動作する特性を持っています。

そのため、データベースの操作やファイルの読み書きなど、ウェブアプリケーションを作るのに適した言語とされています。

○引数とは

引数は、関数に情報を渡すための仕組みです。

関数は特定のタスクを実行するためのコードのまとまりであり、引数を通じて外部からデータを受け取り、それを使って処理を行います。

●PHPでの引数の使い方

○サンプルコード1:関数に引数を渡す

ここでは、関数に引数を渡す基本的なコードを紹介します。

この例では、「sayHello」という関数を定義し、その引数として名前を受け取り、挨拶のメッセージを表示しています。

function sayHello($name) {
    echo "Hello, " . $name;
}

sayHello("John");  // Hello, John

上記のコードでは、”John”という文字列を「sayHello」関数の引数として渡しています。

○サンプルコード2:デフォルト引数の利用

PHPでは引数にデフォルト値を設定することができます。

引数が指定されなかった場合、デフォルト値が使用されます。

次の例では、「greet」関数にデフォルト引数を設定し、引数が渡されない場合にはデフォルト値の”Guest”が使用されます。

function greet($name = "Guest") {
    echo "Hello, " . $name;
}

greet();  // Hello, Guest
greet("John");  // Hello, John

このように、デフォルト引数は関数の使い勝手を高める便利な機能です。

○サンプルコード3:可変長引数の利用

PHPでは可変長引数を使用することも可能です。

可変長引数は、関数に任意の数の引数を渡すことを可能にします。

下記の例では、「sum」関数が可変長引数を受け取り、その合計値を計算しています。

function sum(...$numbers) {
    $total = 0;
    foreach ($numbers as $number) {
        $total += $number;
    }
    echo $total;
}

sum(1, 2, 3, 4, 5);  // 15

このコードでは「sum」関数に5つの引数を渡して、その合計値を表示しています。

可変長引数を用いることで、同じ関数でも様々な数の引数を受け取ることができます。

●PHPでの引数の応用例

○サンプルコード4:引数を用いた計算処理

ここでは、引数を用いて計算処理を行うコードを紹介します。

この例では、数値の配列を引数として受け取り、その合計を求める「calculateSum」という関数を定義しています。

function calculateSum($numbers) {
    $sum = 0;
    foreach ($numbers as $number) {
        $sum += $number;
    }
    return $sum;
}

$nums = [1, 2, 3, 4, 5];
echo calculateSum($nums);  // 15

上記のコードでは、「calculateSum」関数に5つの要素を持つ配列を引数として渡し、その合計値を計算して表示しています。

○サンプルコード5:引数を用いた文字列操作

次に、引数を用いて文字列を操作する例を見てみましょう。

この例では、文字列と単語を引数として受け取り、その文字列中に単語が含まれているかをチェックする「checkWordInString」という関数を作成しています。

function checkWordInString($string, $word) {
    if (strpos($string, $word) !== false) {
        return true;
    } else {
        return false;
    }
}

echo checkWordInString("Hello, world!", "world");  // true

上記のコードでは、「checkWordInString」関数に「Hello, world!」という文字列と、「world」という単語を引数として渡し、その結果を表示しています。

これらの例から、PHPの引数がどのように多様な場面で活用されるかを理解できたことと思います。

●注意点と対処法

○型の一致に注意

PHPは動的型付け言語なので、関数の引数はどんな型のデータでも受け取ることができます。

しかし、予期しない型のデータが引数として渡されるとエラーを引き起こすこともあります。

そのため、型の一致に注意することが重要です。

例えば、数値計算を行う関数に文字列を渡すと、数値として解釈できない場合にエラーが発生します。

そのような状況を避けるためには、関数内部で引数の型をチェックするなどの対策をとるとよいでしょう。

○デフォルト引数の配置

デフォルト引数を使う際には、その配置に注意が必要です。

デフォルト引数は必ず最後に位置するようにしなければなりません。

そうしないと、引数が不足した時にどの引数がデフォルト値を持つべきかが不明確になり、エラーが発生します。

例えば、次のような関数定義はエラーを引き起こします。

function example($a = "default", $b) {
    // ...
}

この関数では、デフォルト引数($a)が非デフォルト引数($b)の前に位置しています。

そのため、この関数に1つの引数を渡すと、それが$aに適用されるのか$bに適用されるのかが不明確になります。

この問題を解決するためには、デフォルト引数を最後に配置します。

function example($b, $a = "default") {
    // ...
}

このように、PHPで関数の引数を扱う際には、型の一致やデフォルト引数の配置など、注意すべき点がいくつかあります。

これらを理解し、適切にコードを書くことで、より堅牢なプログラムを作ることができます。

まとめ

PHPでの引数の使い方とその応用について詳しく説明しました。

引数は関数の動作を制御し、柔軟にプログラムを組むための重要なツールです。

基本的な使い方から応用的な使い方、さらには注意点まで、しっかり理解することで、より効果的にPHPを使うことができます。