php是一种脚本语言,因此在声明或使用类之后,类定义语句应该存在。
为什么在php中可以声明并使用之前在同一个文件中声明的类?
<?php
var_dump(class_exists('TestClass'));#outputs true, why ?
$obj = new TestClass();
$obj->hello();
var_dump('final');
class TestClass{
function hello(){
var_dump('hello');
}
}
输出是:
bool(true) string(5) "hello" string(5) "final"
答案: 我创建了一个用于理解javascript和php中提升的示例,请参阅https://gist.github.com/AndresRicardoTorres/5815833
答案 0 :(得分:2)
类定义被提升,就像函数定义一样(除非它们在条件语句块中)