如何在PHP5中使用php think api一键生成API文档

Karson 3月前 461

FastAdmin在1.0.0.20180308_beta中已经新增了一键生成API文档的功能,此功能可以很方便的根据让我们生成API接口的文档,但是在PHP5中某此情况下可能会导致无法使用此功能。
由于此功能使用了PHP中的ReflectionClass进行分析控制器中的注释和方法,在PHP5中有这样一个BUG会导致在部分情况下产生一个Fatal Error,导致我们无法生成API文档,通常的情况下报错为:

Fatal error: Cannot use app\common\library\Ems as Ems because the name is already in use in C:\phpStudy\WWW\fastadmin\application\api\controller\User.php on line 6

此BUG只在PHP5中出现,PHP7中不会有此问题,具体请查看BUG说明:

https://bugs.php.net/bug.php?id=66773 
https://bugs.php.net/bug.php?id=71079

但我们在PHP5中安装Opcache且启用后,此BUG将不会出现。因为我们建议你如果你使用了PHP5版本,建议你安装启用Opcache,同时需要启用opcache.enable_cli
如何启用Opcache?
因为在PHP5以后都自带Opcache了,我们只需要启用它即可。
1.如果你使用的是phpStudy,可以直接点击其它选项菜单->PHP扩展及设置->PHP扩展,勾选php_opcache,然后点击其它选项菜单->打开配置文件->php-ini,搜索opcache.enable,将opcache.enableopcache.enable_cli都置为1。
2.如果你是在Linux环境,请查找php.ini所在位置,修改其中的opcache.enable值。
重启服务后再次使用php think api --force=true将可正常生成API文档。

最新回复 (3)
  • FastAdmin_MUCH 1月前
    感谢TA
    0 引用 2

    大神 这边都按照 你的配置了 phpinof() 也显示
    PHP Version 5.6.34
    opcache.enable On On
    opcache.enable_cli On On
    Windows命令行
    使用php think api --force=true 任然报错
    [thinkException]
    Please make sure opcache already enabled, Get help:https://forum.fastadmin.net/d/1321

  • F4NNIU 打赏 1月前
    感谢TA
    0 引用 3
    FastAdmin_MUCH 大神 这边都按照 你的配置了 phpinof() 也显示 PHP Version 5.6.34 opcache.enable On On opcache.enable_cli On On ...

    我前几天用 php5.6 试过是可以的。
    或者你再试试 php7。

  • 未登录
    5
返回
发表回复