class class1 { public static function test(){} } class class2 { public function test(){} } 静态方法调用 class1::test();
非静态方法调用 $c2 = new class2();
$c2->test();
从性能来讲
静态方法 :
从程序运行开始 就实例生成内存 ,所以可以直接调用,效率会高很多,但是静态内存是有限制的,实例太多,程序直接启动不了,静态内存会常驻
非静态方法:
实例方法开始生成内存,在调用时申请零散的内存,所以效率会慢很多 ,非静态的用完就释放了
总体来讲都各有优势,什么时候用,都视情况而定