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

那时,如果您想回显它,则需要执行以下操作:

echo getThing();
于 2011-07-07T00:06:07.000 回答
0

PHP.net 文档中关于 __call 的注释中的代码对您来说应该是一个很好的起点,但您需要在 switch 部分添加更多匹配项。

于 2011-07-07T00:28:39.213 回答