0

次のような名前のメソッドのセットがありますgetThing($what, $extra_args)( getは常に名前に含まれています)

...そして、それらを呼び出す通常の方法に加えて、次のように呼び出すこともできます。

  • getWhatThing()=>return getThing($what, $extra_args);

  • WhatThing()=>echo getThing($what, $extra_args);

  • Thing('what')=>echo getThing('what', $extra_args);

  • これらすべてが失敗した場合、メソッドが存在しないというエラーがスローされます...

内からこれを行うにはどうすればよい__call()ですか? 魔法のメソッドを避けるべきなのはわかっていますが、私の API を使用する人々の生活を楽にしたいのです :)

ありがとう

4

2 に答える 2

1

あなたが求めているのはナンセンスです..
すべてのメソッドはただreturn $var.

その時点で、それをエコーし​​たい場合は、explicty do する必要があります:

echo getThing();
于 2011-07-07T00:06:07.000 に答える
0

__callに関する PHP.net のドキュメントのこのコメントにあるコードは、出発点としては適切ですが、switch セクションにさらに一致を追加する必要があります。

于 2011-07-07T00:28:39.213 に答える