../../image/benilogo.gifPHP4 について


PHP の Function 関数 Default parameter について。

 PHPのマニュアル function 

デフォルト引数。  これも今まで知っている言語では絶対に許されない型のようですね。
特に Delphi なんかだと コンパイル時にエラーだらけになりそうです。
php_01/func02.php
<HTML>
<HEAD>
<TITLE>PHP function 関数の実験2</TITLE>
</HEAD>

<BODY>

<P>
関数の実験 func_02<BR>
</P>
<P>
<BR>
</P>

<?php
  $a = 'どうした、こうした';
  $b = '今日は寒い';
  func2( $a,$b );
  echo "表示出来ましたか? <BR>";
  echo func2();
?>

</BODY>
</HTML>

<?php
      /* 定義する。 */
function func2($c = "みぞれが",$d = "ふっている"){

   echo "関数で表示しています    $c   $d   <br>";
};
?>

実行結果
関数の実験 func_02





関数で表示しています どうした、こうした 今日は寒い 
表示出来ましたか? 
関数で表示しています みぞれが ふっている 



ちやんと動作している。

最初は $a,$b に値を入れて func2( $a,$b) で実行する。
結果
関数で表示しています どうした、こうした 今日は寒い
となり 次に 何も引数をとらないで func2( ) とすると
結果
関数で表示しています みぞれが ふっている

となる。 なるほど・・・


引数が全てデフォルト引数の場合は、これでいいのだが、2つのうち一つは普通の引数の場合は デフォルト引数は必ず右側
になっている必要がある。 とマニュアルに書いてある。  入れ子はどうなんだろうか?
たぶん それはダメでしょうなぁ・・・ 試してはないけれど こんなところで 引数を入れ子にする必要はない。
ともかく 引数が複数あったとしても、必ず右側と左側にわけられるのだから デフォルト引数は右側に配置すればいい。

































目次に戻る

2005/02/24start ********* Last Update 2006/11/12 14:55 JST

(C) Y.Kondou,2005,2006 All Rights, Reserved.
その他、お気づきの点がありましたら連絡先はこちらから