如何在实例化对象之前将PHP变量定义为特定的类类型?

时间:2013-11-26 16:17:51

标签: php oop

我正在创建自己的MVC框架,我希望它非常基础,但当我使用IDEEclipse之类的NetBeans时给我警告告诉那些未初始化的变量或者他们不知道它们是什么类型的变量,因此他们不会autocomplete变量应该是的类方法或属性。

为了覆盖它,我创建了一个PHP文件,其中设置了全局环境变量并实例化了一个新对象然后销毁,因此IDE识别它并且我可以很好地使用它。

然后这些类构造函数在那时执行,它可能是危险的,甚至会减慢我的代码。因此,为了更好地覆盖它,如何将变量类型定义为特定类,而不实例化它?

Delphi我们var Test = TTest;Java String testString; testString = new String;

之前{{1}}一样

4 个答案:

答案 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)

<块引用>

类型声明可以添加到函数参数、返回值以及从 PHP 7.4.0 开始的类属性。

当然不适用于所有 php 版本!

see more