- 应用 composer 装置. 因为是不反对 composer 的框架, 所以临时放弃了该办法.
- 应用 pear 装置. 在装置 pear 的时候 php go-pear.phar 总是有限循环在装置步骤中, 即便设置 php-cli 门路也是失败.
- 官网下载 phpDocumentor.phar. https://www.phpdoc.org/
将下载好的文件放到 php.exe 所在的目录中,而后就能够通过命令去生成文档了 `
php phpDocumentor.phar -d "要生成文档的门路" -t "生成的文档寄存门路"
php phpDocumentor.phar -d Pro/ -t docs/api
- d 前面跟文件夹门路,如果是单个文件,能够用 -f。- t 示意指标 target,前面跟 API 文档生成的文件夹。如果须要指定模板,能够在代码前面追加 –template。
php phpDocumentor.phar -d Pro/ -t docs/api --template="clean"
能够通过 template:list 查看所反对的内置模板
php phpDocumentor.phar template:list
能够间接在 template 前面接自定义模板
php phpDocumentor.phar -d Pro/ -t docs/api --template="data/template/my_template"
应用
php phpDocumentor.phar -f "D:\Visual-NMP-x64\www\xinhu0905\webmain\task\api\test.php" -t "D:\document"
会报错. 因为 cli 模式运行应用的是 7.2 版本的 PHP.
于是, 更改 phar 包.
$phar = new Phar('PharFile.phar'); $phar->extractTo('PharFile');
运行即可, 然而更改完后, 再压缩报错, 无奈解决, 于是放弃:
$phar = new Phar('test.phar');
// $phar->extractTo('fmt');
// 指定压缩的目录, 第二个参数为指定压缩的文件类型正则
$phar->buildFromDirectory(__DIR__ . '/phars/', '/.php$/');
// 压缩形式 Phar::GZ PHAR::BZ2
$phar->compressFiles(Phar::GZ);
// 设置默认的启动文件, 也就是入口文件
$phar->setStub($phar->createDefaultStub('index.php'));
打包之前要把 php.ini 中的配置项phar.readonly 设置成Off
注意事项
打包成 phar 后如果脚本里有应用 dir 这些常量的话要把 phar:// 替换掉, 要不然 file_get_content mkdir 等一些函数会报错找不到门路,然而 require_once include 等是能够用的
define('ROOT_PATH', str_replace('phar://', '', dirname(__dir__)));
或着用上面来取以后所在目录
define('ROOT_PATH', realpath('.'));
最初只能斗争应用 5.6 版本的 PHP 运行该文件:
D:/Visual-NMP-x64/Bin/PHP/php-5.6.36-nts-x64/php.exe phpDocumentor.phar -f "D:\Visual-NMP-x64\www\xinhu0905\webmain\task\api\test.php" -t "D:\document"
生成页面:
参考文档:
phpDocumentor
PHPDocumentor 的代码正文标准阐明
PHP 代码打包 —phar
php 打包 phar 文件
phpDocumentor 应用教程【装置 PHPDocumentor】
后续尝试应用 apidoc, 也是一种比拟好代替.