# 注解
注解其實就 PHP 代碼里面的注釋,但是它是有功能含義的。使用注解最大的原因就是因為簡潔、靈活。PHP 使用注解需要安裝插件,否則非常不友好。
### phpStorm
安裝 PHP annotations 插件,可以像寫代碼一樣,寫功能注解。它提供強大的智能提示。
## 使用
該例子表示對 Index 類里有路由相關注解的方法進行掃描,進行自動注冊路由。
~~~
use ESD\Plugins\EasyRoute\Annotation\RestController;
/**
* @RestController()
*/
class Index extends GoController { }
~~~
更多使用注解的地方,在各個插件的文檔頁面會有明確的介紹。
## 原理
其實很簡單,通過 PHP 反射獲取類里面是所有注解([https://www.php.net/manual/zh/book.reflection.php](https://www.php.net/manual/zh/book.reflection.php)), 其次通過 PHP 組件([https://github.com/doctrine/annotations](https://github.com/doctrine/annotations)) 使其實現特殊功能。
- 前言
- 捐贈ESD項目
- 使用篇-通用
- 環境
- 安裝
- 規范
- 壓力測試
- 配置
- 如何設置YML配置
- server配置
- 端口配置
- 項目結構
- 事件派發
- 日志
- 注解
- DI容器
- 自定義進程
- 并發及協程池
- Console插件
- Scheduled插件
- Redis插件
- AOP插件
- Saber插件
- Mysql插件
- mysql事務
- Actuator插件
- Whoops插件
- Cache插件
- PHPUnit插件
- Security插件
- Session插件
- EasyRoute插件
- http路由
- ProcessRpc插件
- AutoReload插件
- AnnotationsScan插件
- Tracing-plugin插件
- MQTT插件
- Pack插件
- AMQP插件
- Validate插件
- Uid插件
- Topic插件
- Blade插件
- CsvReader插件
- hashed-wheel-timer-plugin插件
- 使用篇-HTTP
- 路由
- 靜態文件
- 路由定義
- 修飾方法
- 路由分組
- 資源路由
- 端口作用域
- 異常處理
- 跨域請求
- 路由緩存
- 控制器
- 控制器初始化
- 前置操作
- 跳轉和重定向
- 異常處理
- 請求
- 請求對象
- 請求信息
- request消息
- response消息
- stream消息
- url接口
- 驗證器
- 內置驗證器
- 內置過濾器
- 使用篇-WS
- 如何使用
- 路由
- 使用篇-TCP
- 插件篇-PluginSystem
- 微服務篇-ESDCloud
- CircuitBreaker插件
- SaberCloud插件
- 分布式鏈路追蹤系統
- Consul插件