目的
業務でphpDocumentorを使用する必要があったため忘れないように。
したいことは対象のディレクトリをドキュメント化すること。(今回はLaravelプロジェクト)
公式サイト
https://docs.phpdoc.org/3.0/guide/getting-started/installing.html#installation
開発環境
GithubCodespaces
PHP 8.0.28
結論
wget https://phpdoc.org/phpDocumentor.phar
php phpDocumentor.phar -d /workspace/Laravel/ --ignore vendor -t docs/Laravel
zip -r /workspace/Laravel.zip docs/Laravel
結論としてこの3行のコマンドをターミナルにて実行した。
(commit、pushしない限りはメインのブランチに影響はないと思うが一応事前にcheckoutする)
このコマンドはphpDocumentorをダウンロードした後、/workspace/Laravel/ディレクトリ内のPHPコードを解析し、生成されたドキュメントをdocs/Laravelディレクトリに出力。
最後に、docs/Laravelディレクトリ全体を/workspace/Laravel.zipというZIPファイルに圧縮。
なお実行後はworkspace直下にzipファイルが出来上がっているのでそれをダウンロード。
コマンドごとの解説
phpDocumentorのダウンロード
wget https://phpdoc.org/phpDocumentor.phar
wgetは指定されたURLからファイルをダウンロードするためのコマンド。
このコマンドでは、以下のURLからダウンロードしている。
https://phpdoc.org/phpDocumentor.phar
phpDocumentor.pharファイルの実行
php phpDocumentor.phar
-d オプション
-d /workspace/Laravel/
解析するPHPのコードが含まれているディレクトリを指定。
自分の場合はworkspace配下のLaravelプロジェクトをドキュメントしたいので /workspace/Laravel/ を指定。
--ignore オプション
--ignore vendor
無視したいディレクトリの指定。今回はvendorディレクトリを無視。
vendorディレクトリはライブラリや依存関係が格納されている場所なのでそれまでドキュメントする意味はない。
-t オプション
-t docs/Laravel
生成されるドキュメントの出力先ディレクトリを指定。
今回はworkspace外のdocディレクトリに出力先を指定した。
生成されたドキュメントをzipとしてダウンロード
zip -r /workspace/Laravel.zip docs/Laravel
zipコマンドを使用して、docs/Laravelディレクトリを再帰的に圧縮。
-rオプションは、ディレクトリを再帰的に圧縮する。
/workspace/Laravel.zipは、生成されるZIPファイルのパスとファイル名を指定。
自分の場合は他のメンバーに共有する必要があるので対象のディレクトリをzip化する。
感想
コードが読める人には必要ないかもだが、エンジニア以外の人に現状把握するために説明するときには使えるのかもしれない。また全体のコードをざっくりと把握するのにも使えるかも。(これはどちらかといえばマネージャー視点)