ホームページ >バックエンド開発 >PHPチュートリアル >PHP是可以对非静态方式的方法进行静态形式的调用的

PHP是可以对非静态方式的方法进行静态形式的调用的

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBオリジナル
2016-06-13 11:55:28868ブラウズ

PHP是可以对非静态形式的方法进行静态形式的调用的。

本帖最后由 lytreo650 于 2014-03-14 10:05:21 编辑
<?php<br />class test {<br />	public function sayHello () {<br />		echo 'Hello World';<br />      }<br />}<br />test::sayHello();<br />


运行上面这段代码可以打印出hello world,而且不会报错。
但是我看《深入PHP面向对象,模式与实践》这本书上面明确写着
只有在使用parent关键字调用方法的时候,才能对一个非静态方法进行静态形式的调用。


请问这到底是怎么回事?难道说PHP在思想上是不支持这么做的,但实际上却可以这么做?
------解决方案--------------------
对一个非静态方法进行静态形式的调用 是 php 的惯例
只在 php 5.3 才引入 E_STRICT  检查,php 5.4 才强制检查
------解决方案--------------------
和php不同版本的错误检查级别有关系
------解决方案--------------------
那是当然的!
你不是有 ~E_STRICT 吗?
屏蔽了 E_STRICT 级别的错误检查
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。