[PHP-users 18565]Re: 引数有り関数、引数無し関数の見分け方

JJ jj @ sann.ne.jp
2003年 10月 23日 (木) 15:07:05 JST


 JJです。

すいません説明不足でした。
以下の様にTestクラスを継承(extends)した、ChildTestがあるとします。
TestクラスからChildTestの関数func1を呼び出す時に、
引数を取るか取らないかわからない場合に調べたいという話でした;



┌──────┐
│    Test    │
├──────┤
├──────┤
└──────┘
      ↑extends
┌──────┐
│ ChildTest  │
├──────┤
│            │
├──────┤
│+func1($arg)│
│            │
└──────┘



>関数が引数を取るか取らないかを調べる事が出来るかどうかは
>実は知らないのですが、
>
>function func1($arg == NULL){
>    if (is_null($arg)) {
>        ※引数無しの処理
>    } else {
>        ※引数有りの処理
>    }
>}
>
>とデフォルトの値を指定しておいて、func1のなかで
>動作を切り替えるみたいなことをすれば良いのでは無いのかと思います。

お世話になります。
func1をコールする前を呼び出したいんです。
以下のような感じです。
無理かなぁ;;


class Test ()
{
  function Test(){}

  function main()
  {
    // ここでfunc1が引数を取るか、取らないか調べたい
    if ($this->func1_check()) {
        $this->func1($arg);
    } else {
        $this->func1();
    }

  }
  
  function func1($arg){}

  function func1_check()
  {
     // ここでfunc1が引数を取るかとらないか調べる。
     // true = 引数を取る場合
     return true;

     // false = 引数を取らない場合
     return false;
  }

}






PHP-users メーリングリストの案内