首頁  >  問答  >  主體

Throw標籤的PHP / Symfony註解

我最近遇到了一些關於在 Symfony 中進行註釋的小事(不確定這是否也是純 PHP 的事情)。

新的路線註解如下所示: #[路由('route', name: 'route_name')]

當我想要 @throws 相同類型的註解時,我找不到任何方法來代替看起來像這樣的舊類型:

/**
 * @throws Exception
 */

所以我想要新類型的註釋,即使是@throws

P粉464082061P粉464082061229 天前292

全部回覆(1)我來回復

  • P粉076987386

    P粉0769873862024-03-28 09:16:53

    屬性背後的主要想法是將靜態元資料附加到我們的程式碼(方法、屬性等)。這些元資料通常包括諸如“配置”之類的概念。在您的範例中,此屬性為您的框架設定了一條路徑。有了原則,你就可以建立你的實體。幾年前,還沒有屬性,因此開發人員使用註釋來聲明它們。 PHP8 允許我們使用屬性。讓我們避免使用註解(@Route)。

    Throw 標籤不會在您的應用程式中設定任何內容。該異常只能由您的程式碼引發。

    /**
     * @throws Exception //this line has no impact on your code
     */
    #[Route('route', name: 'route_name')] //this line has an impact by setting up your routes
    public myAction() {
      throw new Exception('foo'); // This line have an impact on your code
    }
    

    這是為開發人員(和有價值的 IDE)提供的信息,可以幫助我們理解程式碼。因此,@Throw 標籤沒有屬性版本。 @Throw 標籤「僅」是文件、PHPDoc、註釋:) 您的程式碼應該在註解和屬性中混合註解

    回覆
    0
  • 取消回覆