以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

时间:2022-12-30 13:02:35

一、前提条件

  1. Windows 操作系统
  2. 可以在本地运行的 PHP 环境,个人用的是 laragon
  3. PhpStorm
  4. Composer

二、设置步骤

  (一)下载 Code Sniffer

  主要使用 PHP 包管理工具 Composer 来获取 Code Sniffer。只要本地安装好了 Composer 并且已经将 Composer 执行文件加入了 PATH 目录,那么就可以在任意目录下运行 Composer 命令。这里强烈推荐 laragon,它几乎包含了现代 PHP 开发所需的大部分工具。以下所涉及到的工具都集成在 laragon 了。

  操作过程:

  1. Ctrl + Alt + T 打开 cmder

  2. 进入项目目录:cd C:\laragon\www\basic

  3. 安装 Code Sniffer:composer require spryker/code-sniffer

  建议在通过 composer 安装软件包的时候,请到 https://packagist.org 查询一下这个包,然后根据提示命令安装:

  以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

  在输入红线框里面的命令后,如果当前项目目录中没有 composer.json 文件,那么 composer 会自动将所有涉及到的包安装到当前项目的 vendor 目录,当然这个目录也是自动创建的。

  (二)设置 PHP 本地执行环境

  打开phpstorm,点击 file --> Settings --> Languages & Frameworks --> PHP 进入以下界面并设置:

  PHP language level 我选择的是 PHP 7.0,目前最多选择 PHP 7.1。其次是选择 Interpreter 的文件目录,点击那“三个小点”按钮,然后选择 PHP 执行目录。

  以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

  选择左上角的绿色加号按钮即可添加:

  以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

  最后点击 Apply 让设置生效。

  (三)设置 Code Sniffer

    在 Settings 设置界面的搜索框中输入:Code Sniffer

  以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

  

  PHP Code Sniffer (phpcs) 目录为:C:\laragon\www\basic\vendor\bin\phpcs.bat。如果点击 Validate 按钮后没有弹出校验成功的信息,那么请确认 PHP 的 PATH目录是否安装到位了。

  以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer

其实有很多通过 composer 安装的软件包都可以通过这种方式来运行。比如我还想安装 Mess Detector 那么依旧通过这种安装方式来运行相应的软件包。

  那么 Code Sniffer 就安装完毕了,具体操作请参考 Code Sniffer 的官方文档,或搜索其他相关教程。

  

  

  

  

以 Composer 的方式在 PhpStorm 中添加代码审查工具 Code Sniffer的更多相关文章

  1. 在 visual studio 中添加 ILDASM 工具

    先写下一般的用法,就是在 vs 中添加 ILDASM 工具. 添加步骤: 工具---->外部工具----->添加: 标题我一般取为 ILDASM,命令那一栏是要选择 ILDASM 的路径, ...

  2. window 右键菜单中添加在vs code 打开

    原文链接: window 右键菜单中添加在vs code 打开 window 右键菜单中添加在vs code 打开 吃码小妖:以前安装VS code可以的,后面不知道为什么不能右键在VS code中打 ...

  3. 通过判断cookie过期方式向Memcached中添加,取出数据(Java)

    应用场景:在数据驱动的web开发中,经常要重复从数据库中取出相同的数据,这种重复极大的增加了数据库负载.缓存是解决这个问题的好办法.但是ASP.NET中的虽然已经可以实现对页面局部进行缓存,但还是不够 ...

  4. phpStorm中使用xdebug工具调试docker容器中的程序

    前提准备 phpstorm开发软件 + dnmp(docker + nginx + mysql +php) 配置好hosts 映射比如 /etc/hosts      127.0.0.1 tp5.de ...

  5. pycharm中添加扩展工具pylint

    今天调试了好几个小时,想吧pylint集成到pycharm中去,从网上找了个宝贝帖 子,但是不好用,原因是作者写的脚本是检查工程和模块的,而我的是单独检查一个文件,当然前者肯定会在项目后期用的.所以就 ...

  6. 在rebar发布的项目中添加监视工具

    默认使用rebar创建的项目没法使用observer,可以如下操作 修改app.src {application, tcp_server, [ {description, ""}, ...

  7. nginx日志中添加请求的response日志

    换个新公司,做一些新鲜的事情,经过一天的琢磨,终于成功添加response日志 在nginx的日志中添加接口response的日志 由于此功能在nginx内置的功能中没有,需要安装第三方模块ngx_l ...

  8. MAPINFO中利用GridMaker工具创建栅格图层

    在工作中需要使用栅格地图,以往都是由研发人员来创建,今天偶然发现Mapinfo中有GridMaker这样一个工具,结合网络搜索自己试了一下,居然做成功了,这里把步骤记录下来,方便以后查看. 1.首先在 ...

  9. DataGridView 中添加CheckBox和常用处理方式 .

    DataGridView 中添加CheckBox和常用处理方式 文章1 转载:http://blog.csdn.net/pinkey1987/article/details/5267934 DataG ...

随机推荐

  1. asp.net 事件加载顺序

    下面是母版页与内容页合并后事件的发生顺序: 母版页控件 Init 事件. 内容控件 Init 事件. 母版页 Init 事件. 内容页 Init 事件. 内容页 Load 事件. 母版页 Load 事 ...

  2. Python开发入门与实战12-业务逻辑层

    12. Biz业务层 前面的章节我们把大量的业务函数都放在了views.py里,按照目前这一的写法,当我们编写的系统复杂较高时,我们的views.py将会越来越复杂,大量的业务函数包含其中使其成为一个 ...

  3. 学习笔记day5:inline inline-block block区别

    1. block元素可以包含block元素和inline元素:但inline元素只能包含inline元素.要注意的是这个是个大概的说法,每个特定的元素能包含的元素也是特定的,所以具体到个别元素上,这条 ...

  4. 重拾C,一天一点点_8

    这两天发现一个问题,我最近发的几篇博文稀里糊涂地被转到别的网站去了,目前发现有两个网站转载了,一个注明了作者出处(博客园 lltong),但没给任何链接.另一个网站呢,就是直接抓的,而且还抓的乱七八糟 ...

  5. (四)学习CSS之position、bottom、left、right和top属性

    参考:http://www.w3school.com.cn/cssref/pr_class_position.asp position 属性规定元素的定位类型. 这个属性定义建立元素布局所用的定位机制 ...

  6. web 文件上传 无刷新的方法 使用iframe

    <html> <script type="text/javascript" src="admin/view/js/jquery.min.js" ...

  7. 【USACO 3&period;3&period;2】商品购物

    [描述] 在商店中,每一种商品都有一个价格(用整数表示).例如,一朵花的价格是 2 zorkmids (z),而一个花瓶的价格是 5z .为了吸引更多的顾客,商店举行了促销活动. 促销活动把一个或多个 ...

  8. Android在应用中依据包名启动另外一个APP

    以下为TestIntentData工程 MainActivity如下: package cn.testintentdata; import java.util.List; import android ...

  9. windows 10系统在右键中添加管理员打开cmd

    需要修改注册表内容,新建文件,后缀名改为reg,文件中粘贴下边的代码 Windows Registry Editor Version 5.00 [HKEY_CLASSES_ROOT\Directory ...

  10. vue的中vuex为何需要mutation更新状态,vue-router的路由的理解

    ); ); ); history.back(); history.forward(); // 修改历史,包括二个方法pushState.replaceState二个方法(objState,title, ...