我正在使用 YII,并@property
为我的所有模型自由地设置了 phpdoc 语句。
在我的 IDE (phpstorm) 中,我可以 Control + Click 方法和字段被带到它们的实现中,但是当我为魔术方法这样做时,它会将我带到类定义的顶部,这是不正确的。
如何设置它以便将我带到相关的 getter 方法?
我的理解是
@property
和@method
方法标签只允许在类级别的文档块中。这两个标签都向开发人员提供了有关通过 megic 方法实现的方法/属性的可用性的提示__call($method,$params)
,__get($var)
和__set($var,$val)
.
在 yii 中,您不需要为类属性显式定义 getter/setter 方法。所以一个属性是通过 'get'.$attributeName
例如访问
/**
* Class User
*
* @method string getFirstName()
* @method void setFirstName(string $firstName)
*
*/
class User extends CModel{
var $firstName;
}
$u= new User();
$username=$u->getFirstName();
$u->setFirstName('Testuser');
在 Yii 的上下文中,上面的代码是真正的 'get'.$attributeName
调用属性魔法方法的 bcz。
由于@property
并且@method
是班级级别的@tags,您唯一的选择是将它们添加到班级,然后按Ctrl +单击将焦点发送到相应班级docblock