PHP 引数省略可能な関数を作る方法

スポンサーリンク

関数でほとんど変わらない引数を、呼び出すたびに設定するのが面倒な場合、引数を省略できて、必要な場合の時だけ設定できる関数の作り方
関数を定義する時に、引数に’=’でデフォルトの値を記述するだけです。

<?php
// 引数省略可能な関数
function TestFunc($a="a", $b="b", $c="c")
{
  // 中の処理(これは適当)
   echo "$a<BR>\n" ;
   echo "$b<BR>\n" ;
   echo "$c<BR>\n" ;
}
// テストしてみる
// 引数の全て省略した場合
TestFunc() ;
 /* 結果は
 a
 b
 c
となり成功 */
// 最後の引数を省略した場合
TestFunc('XA', 'XB') ;
 /* 結果は
 XA
 XB
 c
となり成功 */
// 最初の引数を省略した場合
TestFunc( , 'XB', 'XC') ;
/* 結果
エラー
省略できるのは、後ろか、全てってこと*/