我正在创建自己的MVC
框架,我希望它非常基础,但当我使用IDE
或Eclipse
之类的NetBeans
时给我警告告诉那些未初始化的变量或者他们不知道它们是什么类型的变量,因此他们不会autocomplete
变量应该是的类方法或属性。
为了覆盖它,我创建了一个PHP文件,其中设置了全局环境变量并实例化了一个新对象然后销毁,因此IDE识别它并且我可以很好地使用它。
然后这些类构造函数在那时执行,它可能是危险的,甚至会减慢我的代码。因此,为了更好地覆盖它,如何将变量类型定义为特定类,而不实例化它?
与Delphi
我们var Test = TTest;
和Java
String testString;
testString = new String;
答案 0 :(得分:27)
根据IDE的不同,您可以使用PHPDoc注释来完成代码
/** @var YourClass */
private $variable;
这是IDE特定的
答案 1 :(得分:11)
PHP是松散类型的,所以你不能像在Java中那样做。但是,您可以为自定义类提供类型提示。请参阅PHP.net上的此说明:http://php.net/manual/en/language.oop5.typehinting.php
答案 2 :(得分:0)
我现在知道Facebook开发人员创建了一个名为Hack的PHP变体,它是一个强类型的PHP。
答案 3 :(得分:0)