微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

用于使用字符串调用方法的PHP大括号语法

我在 SO answer中看到,可以使用花括号内的字符串来调用PHP方法

$player->SayHi();

可以替代写成:

$player->{'SayHi'}();

我的问题是:

PHP调用的语法是什么?如果使用了与方法不对应的错误字符串会发生什么?

另外,我可以使用此语法来调用非类方法吗?

我查看了链接帖子中的答案,并且只有PHP回调语法的链接,这似乎不包括大括号语法.

谢谢,

解决方法

它是 variable functions的一部分.当使用变量或变量函数时,您可以将变量替换为通过包裹大括号返回字符串的任何表达式.所以你可以这样做:

$var = 'SayHi';
$player->$var();

或者您可以一步完成:

$player->{'SayHi'}();

带有大括号的语法显示variable variables的文档中.示例中有一个变量类属性,但类方法使用相同的语法.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐