国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

PHP注釋的藝術(shù)——phpDoc規(guī)范

HtmlCssJs / 1376人閱讀

摘要:特別適合一些動態(tài)加載的類,無法自動提示出來,這時(shí)就可以通過寫標(biāo)記來告訴我這類里有哪些方法格式返回值類型名稱類型參數(shù)描述例如向谷歌提問,返回答案內(nèi)容包。

用過IDE或看過其他源碼的小伙伴們應(yīng)該都見過類似下面這樣的注釋

/**
 * 遞歸獲取所有游戲分類
 * @param int $id
 * @return array
 */

看得多了就大概知道了一些規(guī)律。為了使自己的代碼更加規(guī)zhuangbi,也開始有樣學(xué)樣地寫著這些注釋

其實(shí)這種注釋格式是有自己的名字的,它就叫——

PHPDOC

PHPDoc 是一個(gè) PHP 版的 Javadoc。它是一種注釋 PHP 代碼的正式標(biāo)準(zhǔn)。它支持通過類似 phpDocumentor 這樣的外部文檔生成器生成 API 文檔,也可以幫助一些例如 Zend Studio, NetBeans, ActiveState Komodo Edit and IDE 和 Aptana Studio 之類的 集成開發(fā)環(huán)境 理解變量類型和弱類型語言中的其他歧義并提供改進(jìn)的代碼完成,類型提示和除錯(cuò)功能。
PHPDoc 可同時(shí)支持 面向?qū)ο?的和 面向過程的 代碼。

以上摘自維基百科
簡單來說PHPDOC可以用來自動生成API文檔。主流的IDE都會識別它,并在你coding中給予你相應(yīng)的智能提示。使用PHPDOC有以下好處

讓你的代碼更加規(guī)zhuangbi,更易于理解

讓你的IDE更懂你的代碼,更加智能的提示和自動完成

如需API手冊,可使用phpDocumentor來自動生成

還等什么?快跟我一起來學(xué)習(xí)又好用又有逼格的phpDoc吧!

有關(guān)phpDoc的完整文檔位于phpDocumentor官網(wǎng)。以下內(nèi)容由我個(gè)人理解、提煉而來,而且我也還在學(xué)習(xí)中,如有失誤還請各位多多指教

@api

表示這是一個(gè)提供給第三方使用的API接口

@author

作者
格式@author [名稱] [<郵箱>]
例如@author mokeyjay

@copyright

版權(quán)聲明。例如很多網(wǎng)站底部都有
格式@copyright [描述]
例如@copyright 1949-2016 China

@deprecated

不建議使用的、已過期的、將被刪除的
格式@deprecated [<版本號>] [<描述>]
例如@deprecated 1.0.0 新版本將不再包含此函數(shù)
如果它是被其他方法所取代了,建議添加@see標(biāo)記

@example

例子、示例、用例。也可表示方法返回值的例子
格式@example [位置] [<起始行號> [<行數(shù)>] ] [<描述>]
例如@example demo.php 10 3 使用示例

@filesource

沒看懂,如果你們看懂了請告訴我。傳送門

@global

全局變量
格式@global [類型][名稱] @global [類型][描述]
我懷疑這里是源文檔打錯(cuò)了,大概應(yīng)該是
格式@global [類型][名稱][描述]
類型@global string name 用戶名

@ignore

忽略
格式@ignore [<描述>]
例如你在ifelse的語句塊中定義分別同一個(gè)變量但值不同時(shí),可以通過此標(biāo)記讓phpDocumentor忽略其中一個(gè),以免生成重復(fù)的文檔。例如

if ($ostest) {
     /**
      * This define will either be "Unix" or "Windows"
      */
     define("OS","Unix");
 } else {
     /**
      * @ignore
      */
     define("OS","Windows");
 }
@internal

僅限內(nèi)部使用的
格式@internal [描述]
例如@internal 僅限內(nèi)部測試使用

@license

協(xié)議,很常見的啦
格式@license [] [名稱]
例如@license GPL

@link

鏈接,可用于輔助說明、引用文檔等
格式@link [url] [<描述>]
例如@link http://g.cn 不懂滾去問谷歌,別來煩我

@method

方法。這是用在類注釋里的標(biāo)記。特別適合一些動態(tài)加載的類,IDE無法自動提示出來,這時(shí)就可以通過寫@method標(biāo)記來告訴IDE我這類里有哪些方法
格式@method [返回值類型] [名稱]([[類型] [參數(shù)]<, ...>]) [<描述>]
例如@method string google(string $question) 向谷歌提問,返回答案內(nèi)容

@package

包。但php沒有包,所以就用來表示命名空間
例如@package yiiasedb

@param

參數(shù),用于函數(shù)和方法注釋里的標(biāo)記
格式@param [Type] [name] []
例如@param string title 文章標(biāo)題

@property

類屬性,與@method類似,可以告訴IDE我這類里有哪些屬性
格式@property [Type] [name] []
例如@property int id 用戶id

@property-read

只讀的屬性。例如__get魔術(shù)方法能夠取到的屬性
格式@property-read [Type] [name] []
例如@property-read int id 用戶id

@property-write

只可寫的屬性。例如__set魔術(shù)方法能夠設(shè)置的屬性
格式@property-write [Type] [name] []
例如@property-write string name 用戶名

@return

返回值
格式@return [類型] [<描述>]]
例如@return array 結(jié)果數(shù)組

@see

參考,類似@link,可與@deprecated聯(lián)動
格式@see [url或完整方法名] [<描述>]
例如@see yiiasedb::tableName() 舊方法table_name已棄用,請使用此方法替代

@since

從xx版本開始。例如從1.0之后添加了xx功能、刪除了xx參數(shù)等
格式@since [1.0.0] [<描述>]
例如@since 1.0.2 添加了$b參數(shù)

@source

沒看懂,如果你們看懂了請告訴我。傳送門

@throws

可能會拋出的錯(cuò)誤類型
格式@throws [類型] [<描述>]
例如@throws LifeException 沒錢了,好想死啊

@todo

待辦。提示自己或他人還需要做些什么
格式@todo [描述]
例如@todo 這個(gè)類還沒做異常處理

@uses

使用
格式@uses [完整方法名] [<描述>]
例如@uses yiiasedb::$count 使用此屬性計(jì)數(shù)

@var

變量
格式@var [類型] [變量名] [<描述>]
例如@var int id 用戶id

@version

版本號
格式@version [<載體>] [<描述>]
例如@version 1.0.1 2016-07-03更新
或者@version GIT:1f3197d01 來自GIT分支1f3197d01

本文同時(shí)刊登于我的博客 超能小紫,如果喜歡請常來玩哦

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/31946.html

相關(guān)文章

  • 正確注釋@return讓PHPstorm動態(tài)返回類

    摘要:大意就是和差不多,但是父類方法子類調(diào)用,仍然返回父類。這個(gè)確切的對象實(shí)例,通常用于表示流暢的界面。這次我才真正意識到了注釋的重要性。。。最后,因?yàn)椴⒉皇俏乙粋€(gè)人在寫,所以沒有辦法進(jìn)行大刀闊斧地改動,只能盡可能地優(yōu)化。 場景是這樣的,有一個(gè)BaseModel(繼承自ActionRecord),所有的其他model都繼承自它,然后其中有一個(gè)方法,簡單貼下這個(gè)類的代碼,: class Bas...

    simon_chen 評論0 收藏0
  • php-cs-fixer - PHP 編碼格式化工具

    摘要:是個(gè)代碼格式化工具,格式化的標(biāo)準(zhǔn)是以及一些的標(biāo)準(zhǔn)。這個(gè)工具也和等優(yōu)秀的庫出自同門。如果同時(shí)設(shè)定了和,前者的優(yōu)先級更高。同時(shí)使用和命令可以顯示出需要修改的匯總,但是并不實(shí)際修改。你可以設(shè)置格式化的選項(xiàng)級別文件以及目錄。 php-cs-fixer 是個(gè)代碼格式化工具,格式化的標(biāo)準(zhǔn)是 PSR-1、PSR-2 以及一些 symfony 的標(biāo)準(zhǔn)。這個(gè)工具也和 symfony、twig 等優(yōu)秀的 ...

    ityouknow 評論0 收藏0
  • 如何成為一名優(yōu)秀工程師(語義篇)

    摘要:好的語義表達(dá)是團(tuán)隊(duì)協(xié)作中高效迭代的潤滑劑,好的語義表達(dá)是線上未知代碼問題排查的指南針。日常中應(yīng)該多多刻意提升自己語義表達(dá),百利而無一害。注釋更多參考函數(shù)方法案例先說明一句,不好的代碼不妨礙它成為一個(gè)優(yōu)秀的軟件。這是非常不友好的語義表達(dá)。 好的語義表達(dá)是團(tuán)隊(duì)協(xié)作中高效迭代的潤滑劑,好的語義表達(dá)是線上未知代碼問題排查的指南針。 本篇文章巨長,如果你比較懶,來我講給你聽(直播中有更多細(xì)節(jié)) ...

    張金寶 評論0 收藏0
  • 在github規(guī)范開發(fā)以及持續(xù)構(gòu)建php項(xiàng)目

    摘要:本文目的是通過自己寫的一個(gè)的簡單的庫花密密碼生成工具,來學(xué)習(xí)我認(rèn)為的庫開發(fā)的一些規(guī)范,以及上持續(xù)構(gòu)建你的項(xiàng)目的一些方法。給自己的項(xiàng)目開啟持續(xù)構(gòu)建。包發(fā)布以及當(dāng)你的代碼完成后,測試完成后。 本文目的是通過自己寫的一個(gè)php的簡單的庫(花密密碼生成工具), 來學(xué)習(xí)我認(rèn)為的php庫開發(fā)的一些規(guī)范,以及github上持續(xù)構(gòu)建你的項(xiàng)目的一些方法。其實(shí)是為了顯示下邊一系列的的徽章 showImg(...

    Sleepy 評論0 收藏0
  • swagger系列一:laravel中部署swagger ui

    摘要:部署到項(xiàng)目中可以下來也可以下載文件。解壓后把目錄下的目錄拷貝到下下的文件夾中,如新建。訪問修改為自己的項(xiàng)目文件。找到,把修改為自己的,如,再次訪問即可。但是并不存在,需要生成。如放在下的目錄,用于存放文件。 1. 部署swagger ui 到項(xiàng)目中: 可以Git下來 git clone https://github.com/swagger-api/swagger-uiv也可以下載zi...

    lookSomeone 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<