あざらし備忘録。

音ゲー好きなウェッブエンジニアがいろいろ思った事やった事を書いていくブログです

phpDocでarrayの中身を明示する[PHP][PHPDoc]

軽いTips共有を。

皆さんPHPDoc、書いてますでしょうか?

IDEとかだと特にジャンプ力や補完等もより効くようになるしそもそも親切なコードになると思うので割と積極的に書くようにしています。

今回はそのPHPDocがらみで知った小ネタのご紹介です。 また、今回はPHPDocではなくphpDocumentor前提な話で行こうと思います。あしからず。

phpDocumentor - PHPDocに代わるAPIドキュメント自動生成ツール - Do You PHP? このあたりが参考になるかと思います。

まぁしばしば配列を引数に取ったり変数に格納したりしたい場合がありますよね。

そういう時、今までは

<?php

/** @var array $hoge */
$hoge = [1,2,3,4,5];

//とか

/**
  * @param array $hoge
  * @return array
  */
public function fuga(array $hoge)
{
    return $hoge;
}

とか書いていたのですが、これだとarrayの中身はなんだよってなりがちです。

実はphpDocはこの悩みを一応サポートしていて、次のようにかけます。

<?php

/** @var int[] $hoge */
$hoge = [1,2,3,4,5];

//とか

/**
  * @param int[] $hoge
  * @return int[]
  */
public function fuga(array $hoge)
{
    return $hoge;
}

参考: http://www.phpdoc.org/docs/latest/guides/types.html#arrays

地味によく遭遇するので、使ってみると良いかもしれません:)