vendor/bin
目录中没有phpdoc,尝试通过composer安装phpDocumentor失败(如GitHub页面中建议的)。我找不到任何最近的资源来解决这个问题,唯一有帮助的是从终端运行
phpDocumentor.phar
文件,但最新版本立即失败。vendor/bin
目录中没有phpdoc,尝试通过composer安装phpDocumentor失败(如GitHub页面中建议的)。phpDocumentor.phar
文件,但最新版本立即失败。要使此功能正常工作,需要降级到PHP 7.1版本。然后从[http://www.phpdoc.org/phpDocumentor.phar]下载最新的phpDocumentor.phar
文件。将phpDocumentor.phar放入您的Laravel 6.x项目的/vendor/bin/
目录中。
然后使用Homebrew安装其他所需的软件包...
brew install intltool
brew install graphviz
/vendor/bin
目录并运行...php phpDocumentor.phar -d ../../app/Http/Controllers
/vendor/bin/output.
。我发现大多数PHP文档解决方案的问题在于它们需要大量的代码才能得到实际可用的东西。这需要很长时间和试错来设置。
我也有关于生成的文档的问题。通常它甚至没有排序!而且很难浏览和理解整个类。作为一个类的使用者,你对私有或受保护的东西不感兴趣(除非你想要扩展它)。但是通常文档只显示当前类的方法和属性,而不是它继承的内容(这正是面向对象编程的全部意义所在!)。
无论如何,我已经厌倦了当前PHP文档的状态,并决定做到完美。我编写了PHPFUI/InstaDoc来解决我对现有解决方案的所有问题。InstaDoc是最快的文档生成器,因为它只是扫描类目录结构并将其保存下来。这通常只需要几秒钟(对于大型代码库)每次生成(发布时或在开发环境中添加新类时)。然后它在运行时为特定类呈现文档,因为,嘿,谁会看文档呢?只有我们这些书呆子,而且我们很少,我们可以等待服务器在飞行中生成文档的一小部分时间。此外,您不需要服务器磁盘空间来存储所有文档。它们是即时生成的。当然,如果您有一个高流量站点,InstaDoc可以生成静态HTML文件,但是谁有高流量的PHP文档站点(像没有人一样)。
无论如何,可以在PHPFUI/InstaDoc上查看实时示例,看看它是否符合您的需求。它不是Laravel模块或插件,但您应该能够轻松地在Laravel下运行它。只需在您的控制器中返回控制器的输出,它就应该可以正常工作。
分享一下我在使用MacOS Catalina、Laravel 6和PHP 7.2的系统环境下,成功创建Laravel项目文档的完整解决方案。
访问https://docs.phpdoc.org/3.0/guide/getting-started/installing.html。为了安装依赖项,建议更新homebrew,使用以下命令进行更新:
brew update
brew upgrade
在更新homebrew后,执行以下操作:
brew install graphviz
brew install plantuml
一旦安装依赖项,可以从上述链接下载phpDocumentor.phar文件,并将文件设置为可执行,如下所示:
chmod +x phpDocumentor.phar
然后将该文件复制并粘贴到您的Laravel应用程序中的/vendor/bin
目录下。
我还将此文件放置在本地bin目录下mv phpDocumentor.phar /usr/local/bin/phpDocumentor
以便更容易地访问(如下面的步骤6所示)。
为了测试目的,在/vendor/bin/docs/test.php
目录下创建一个简单的test.php文件,其内容如https://docs.phpdoc.org/3.0/guide/getting-started/your-first-set-of-documentation.html中所述。
<?php
/**
* This is a DocBlock.
*/
function associatedFunction()
{
}
/vendor/bin
位置执行phpdoc脚本:
phpDocumentor.phar -d docs/test.php -t docs/test
这将生成几个文件。
在Web浏览器(例如Chrome)中打开生成的index.html文件以查看文档:
open -a "Google Chrome" ./docs/test/index.html
值得注意的是,因为我们将phpDocumentor.phar放置在/usr/local/bin/phpDocumentor/phpDocumentor.phar
中,所以我们可以轻松访问phpdoc并轻松创建整个应用程序的文档(文档将存储在DOCS文件夹中):
phpDocumentor.phar -d app/ -t DOCS/