【问题标题】:phpdoc how to document @return for both success and failphpdoc 如何记录@return 成功和失败
【发布时间】:2017-11-24 05:41:08
【问题描述】:

我正在尝试正确保存我的 php rest 服务器文档,所以我想知道我们如何记录返回值可以是 2 之一?

  /**
   * send email to a user that contain reset data
   * it also create reset token, so if there was an old reset token it will be changed
   *
   * @param email $email {@type email"
   * @return SuccessMessage|FailMessage
   */
  public function getSearch($email){
   // search for $email, if success return 
   if($this->doOperation()===true){
     return new SuccessMessage($email);
   }

   return new FailMessage($email);
  }

现在 FailMessage 和 SuccessMessage 都只是空类来充当一致的数据结构

类似的东西。

class FailMessage extends Messages{
  function __construct(string $message, int $uid) {
      if(is_callable("parent::__construct")){
        parent::__construct(...func_get_args());
      }
      $this->uid = $uid;
      $this->message = $data;
   }
}

【问题讨论】:

  • 我认为SuccessMessage|FailMessage 没有任何问题。你面临什么确切的问题?您是在生成 HTML 文档还是只是希望在 IDE 中提供代码智能?
  • 你写的应该够好了。
  • 我会使用@return Message,因为都是空类
  • 是的,我使用生成器使用 luracast restler 框架生成 html 文档(Swagger)
  • 我很好奇parent::__construct(...func_get_args())。你真的可以使用它来将所有参数传递给另一个方法吗?我以为... 只是为了接受一组未知的参数?

标签: php phpdoc docblocks


【解决方案1】:
  /**
   * send email to a user that contain reset data
   * it also create reset token, so if there was an old reset token it will be changed
   *
   * @param email $email {@type email"
   * @return object SuccessMessage|FailMessage
   */

您自己的评论是好的,但更多您可以添加对象类型。另请阅读官网以下文档:

returnTags-PHPDoc

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-03
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 2015-08-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多