関数の引数にデフォルト値を指定
当ページのリンクには広告が含まれています。
PHPスクリプトで宣言した関数の引数にデフォルト値を指定する方法を紹介します。
関数の引数にデフォルト値を指定
それでは、関数の引数にデフォルト値を指定する構文をみてみましょう。
function 関数名( 引数 = デフォルト値 ) { // 処理 return 戻り値; }
このように関数の引数に「=」を付けてデフォルト値を指定します。
関数の引数にはデフォルト値を指定しない/指定するものを合わせて使うこともできます。
function 関数名( 引数, 引数 = デフォルト値 ) { // 処理 return 戻り値; }
サンプルスクリプト①
関数「hoge」の引数「$a」にデフォルト値「Hello」を指定しました。
function hoge( $a = "Hello"){ $a .= ", World\n"; return $a; } echo hoge();
実行結果です。
Hello, World
引数にデフォルト値が設定されているので、関数を呼び出す際に引数を指定する必要はありません。
サンプルスクリプト②
引数にデフォルト値を指定しない/指定するものを合わせた関数のサンプルスクリプトです。
<?php function piyo($a,$b=5){ return $a*$b; } // 引数を1つ指定 echo piyo(3) ."\n"; // 引数を2つ指定 echo piyo(10,2) ."\n"; ?>
実行結果です。
15 20
「引数を1つ指定」して関数を呼び出した場合は、関数の引数に指定したデフォルト値が使われるので、「3×5=15」が実行結果になります。
「引数を2つ指定」して関数を呼び出した場合は、引数に指定したデフォルト値が上書きされるので、「10×2=20」が実行結果になります。