首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >推荐12-PhpStorm 使用 PHPCS 检查代码规范及自动修正和Git提交检查

推荐12-PhpStorm 使用 PHPCS 检查代码规范及自动修正和Git提交检查

作者头像
猿哥
发布2019-09-19 17:17:40
1.6K0
发布2019-09-19 17:17:40
举报
文章被收录于专栏:Web技术布道师Web技术布道师

在团队开发中,每个人的代码风格都不一样,为了日后方便更新和维护,必须考虑协作和编码规范。

本文就介绍如何在 PhpStorm 中配置 PSR2 代码规范检查和保存自动格式化修复,以及利用 Git Hook 对提交的代码进行检查。

正文

安装PHP-CS

composer global require "squizlabs/php_codesniffer=*"

安装完成后会在全局依赖包目录生成 phpcbf 和 phpcs 文件

查看 composer 全局依赖包路径,下面会用到

composer global config bin-dir --absolute

配置 PhpStorm 使用 PSR-2 标准

1. 代码风格
2. 设置 PHP-CS 路径
3. 代码检查

如果没有下拉选项,可以点击旁边的刷新按钮

还有这个

配置到这里后,打开一个 PHP 文件,就会在不符合 PSR-2 的代码下边加一条波浪线

使用 Ctrl + Alt + L 将会自动格式化成 PSR-2 的风格

集成 PHP-CS

经过上面的操作,Phpstorm 代码格式化的规则基本与 PHP-CS 的规则基本一致了,但也有一小部分不一致,所以后面还要用到 phpcs 和 phpcbf

参数说明

Program: phpcs/phpcbf 路径

Arguments:

--standard=PSR2 $FileDir$/$FileName$ ## 当前文件
--standard=PSR2 $FileDir$ ## 当前文件夹

Working directory: $ProjectFileDir$

使用方法

配置保存自动格式化和修复

1. 为 phpcbf 添加快捷键
2. 录制宏

步骤:

Ctrl + Alt + L
Ctrl + Alt + Shift + P
Ctrl + S
3. 为宏配置快捷键

先删除默认的保存快捷键 Ctrl + S ,另外配置一个别的快捷键 Ctrl + Alt + Shift + S

为宏配置快捷键

利用 Git Hook 对提交的代码进行检查

安装 GrumPHP
composer require --dev phpro/grumphp

安装完后会自动生成一个 grumphp.yml

请修改成:

parameters:
  git_dir: .
  bin_dir: vendor/bin
  tasks:
    phpcs:
      standard: PSR2
      ignore_patterns:
        - ./database/*
        - ./vendor/*

这样 git commit 的时候就会对提交的代码进行检查,只有符合 PSR-2 规范的代码才能通过。

原文链接:https://4ark.me/post/6959bf0.html

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2019-09-18,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 PHP技术大全 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 正文
    • 安装PHP-CS
      • 配置 PhpStorm 使用 PSR-2 标准
        • 1. 代码风格
        • 2. 设置 PHP-CS 路径
        • 3. 代码检查
      • 集成 PHP-CS
        • 参数说明
        • 使用方法
      • 配置保存自动格式化和修复
        • 1. 为 phpcbf 添加快捷键
        • 2. 录制宏
        • 3. 为宏配置快捷键
      • 利用 Git Hook 对提交的代码进行检查
        • 安装 GrumPHP
    相关产品与服务
    腾讯云代码分析
    腾讯云代码分析(内部代号CodeDog)是集众多代码分析工具的云原生、分布式、高性能的代码综合分析跟踪管理平台,其主要功能是持续跟踪分析代码,观测项目代码质量,支撑团队传承代码文化。
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档