我应该使用 @return self、这个还是当前类?

发布于 2024-11-27 17:27:18 字数 1431 浏览 2 评论 0原文

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(4

失退 2024-12-04 17:27:18

PHP 标准建议 (PSR) 目前处于草案中 (PSR-5) 提议 @返回$this 用于指示返回相同的实例。

$this,该类型所应用的元素与给定上下文中的当前类是同一个实例。因此,该类型是 static 的更严格版本,此外,返回的实例不仅必须属于同一类,而且必须属于同一实例。

此类型通常用作实现流畅接口设计模式的方法的返回值。

此表示法目前由 PhpStorm 和 Netbeans 等流行 IDE 使用。

There is a PHP Standards Recommendation (PSR) currently in draft (PSR-5) that proposes @return $this is used in order to indicate that the same instance is returned.

$this, the element to which this type applies is the same exact instance as the current class in the given context. As such this type is a stricter version of static as, in addition, the returned instance must not only be of the same class but also the same instance.

This type is often used as return value for methods implementing the Fluent Interface design pattern.

This notation is currently used by popular IDEs such as PhpStorm and Netbeans.

橪书 2024-12-04 17:27:18

@return Current_Class_Name 肯定会起作用,并且是我更喜欢的。

@return self 也可以在某些程序中正常工作。

@return this 不好,因为这不是类型名。

@return Current_Class_Name will definitely work and is what I prefer.

@return self may work ok with some programs too.

@return this is bad because this is not a typename.

近箐 2024-12-04 17:27:18

这个问题很老了,但我只是想分享给大家!

至少对于那些使用 NetBeans 8.1 的人来说。这个表示法使得代码自动完成功能在 IDE 中很好地工作

/**
 * Method that returns $this instance (using late state binding)
 * @return static
 */
 public function iWillReturnMyself ( ) {
     return $this;
 }

我说至少适用于 NetBeans8.1 用户,但可能也适用于旧版本和/或其他 IDE =]

This question is quite old, but I just want to share to everyone!

AT LEAST for the ones that uses NetBeans 8.1.. this notation makes code autocompletion to nicely work at IDE:

/**
 * Method that returns $this instance (using late state binding)
 * @return static
 */
 public function iWillReturnMyself ( ) {
     return $this;
 }

I say AT LEAST for NetBeans8.1 users, but may work on older versions and/or others IDEs too =]

七月上 2024-12-04 17:27:18
/**
 * set something
 *
 * @return self
 */
public function setSomething(){
            // ...
    return $this;
}

您可以使用“self”类型作为@param或@return。PHPDoc

建议“self”在对象中引用self。

来源:http://www.phpdoc.org/docs/latest/references/phpdoc/types.html

/**
 * set something
 *
 * @return self
 */
public function setSomething(){
            // ...
    return $this;
}

You can use "self" type as @param or @return..

PHPDoc recommends 'self' to refer to self in object..

Source: http://www.phpdoc.org/docs/latest/references/phpdoc/types.html

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文