Heim  >  Artikel  >  Backend-Entwicklung  >  把Swagger插件集合到ThinkPHP框架里面

把Swagger插件集合到ThinkPHP框架里面

WBOY
WBOYOriginal
2016-08-18 09:15:571794Durchsuche

我安装这个网站的教程来把swagger插件合成到ThinkPHP中;https://github.com/fengdeqiao...
发现这个教程很多坑,一不小心就会出错。我现在已经合成到第四步:

**

第四步:thinkphp中使用swagger-php

**

如果我们每次修改了api,还要手动执行第三步的代码,有些繁琐,那我们就在控制器中写一个方法,每次访问swagger-ui的时候自动执行,然后跳转到前台swagger界面中。

注意:在thinkphp的入口文件index.php中加入require './vendor/autoload.php';

下面是控制器里面的方法

$path = 'E:wamp64wwwtp'; //你想要哪个文件夹下面的注释生成对应的API文档
$swagger = Swaggerscan($path);
//header('Content-Type: application/json');
//echo $swagger;
$swagger_json_path = $path.'/swagger-docs/swagger.json';
$res = file_put_contents($swagger_path, $swagger);
if ($res == true) {
$this->redirect('http://localhost/swagger-ui/d...');
}

可是调用 scan()函数就报错,说 Class 'SwaggerStaticAnalyser' not found
哪位高手能告诉我一下要如何修改!

回复内容:

我安装这个网站的教程来把swagger插件合成到ThinkPHP中;https://github.com/fengdeqiao...
发现这个教程很多坑,一不小心就会出错。我现在已经合成到第四步:

**

第四步:thinkphp中使用swagger-php

**

如果我们每次修改了api,还要手动执行第三步的代码,有些繁琐,那我们就在控制器中写一个方法,每次访问swagger-ui的时候自动执行,然后跳转到前台swagger界面中。

注意:在thinkphp的入口文件index.php中加入require './vendor/autoload.php';

下面是控制器里面的方法

$path = 'E:wamp64wwwtp'; //你想要哪个文件夹下面的注释生成对应的API文档
$swagger = Swaggerscan($path);
//header('Content-Type: application/json');
//echo $swagger;
$swagger_json_path = $path.'/swagger-docs/swagger.json';
$res = file_put_contents($swagger_path, $swagger);
if ($res == true) {
$this->redirect('http://localhost/swagger-ui/d...');
}

可是调用 scan()函数就报错,说 Class 'SwaggerStaticAnalyser' not found
哪位高手能告诉我一下要如何修改!

不谢https://github.com/TIGERB/swa...

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn