理解静态方法调用静态方法错误
在 PHP 中,提供的代码片段遇到错误消息:
Strict standards: Non-static method Page::getInstanceByName() should not be called statically in /var/www/webworks/index.php on line 12
静态调用Page类中的非静态方法时会出现此错误,这不是
修复
要解决此问题,需要将 Page 类中的 getInstanceByName() 方法声明为静态方法。将行:
function getInstanceByName($name='')
修改为:
public static function getInstanceByName($name='')
通过将方法声明为静态,您可以使用类名调用它,例如:
$r = Page::getInstanceByName($page);
额外注意事项
以上是为什么在 PHP 中静态调用非静态方法会导致错误?的详细内容。更多信息请关注PHP中文网其他相关文章!