PHP:如果方法不存在,如何确保脚本不会失败?

发布于 2024-09-06 10:23:41 字数 464 浏览 2 评论 0原文

我有一个 PHP 脚本,它调用我编写的类中的方法。然而,由于系统的性质,有时调用的方法不存在,例如

$snippets = new Snippets();

echo $snippets->fakeMethod();

在上面的示例中,fakeMethod() 不存在,并且脚本失败并出现致命错误并完全停止。

我需要一个解决方案,要么该方法只是默默地失败,或者首先使用 method_exists() 检查类中的所有方法,但是我无法将 if 语句放入脚本中例如

if(method_exists(fakemethod, snippets)){ 

echo $snippets->fakeMethod();

}

,“工作”需要以某种方式在课堂上完成。有解决办法吗?

I have a PHP script which calls methods from a class I have written. However due to the nature of the system there are occasions where the method called does not exist e.g

$snippets = new Snippets();

echo $snippets->fakeMethod();

in the above example fakeMethod() does not exist and the script fails with a fatal error and stops altogether.

I need a solution whereby either the method just fails silently or the method is checked against all methods in the class first using method_exists() however I cannot put if statements in the script e.g.

if(method_exists(fakemethod, snippets)){ 

echo $snippets->fakeMethod();

}

instead the "work" needs to be done in the class somehow. Is there a solution?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

一口甜 2024-09-13 10:23:41

您可以定义一个“神奇”方法__call

You can define a "magic" method __call

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文