1:安装php code sniffer 和 php md php code sniffer a: centos系的 #yum install php-pear #yum install ImageMagick-devel #pear install PHP_CodeSniffer #pear channel-discover pear.phpmd.org #pear channel-discover pear.pdepend.org #pear install
1:安装php code sniffer 和 php md
php code sniffer
a: centos系的
#yum install php-pear
#yum install ImageMagick-devel
#pear install PHP_CodeSniffer
#pear channel-discover pear.phpmd.org
#pear channel-discover pear.pdepend.org
#pear install --alldeps phpmd/PHP_PMD
修改php.ini文件,加入extension=imagick.so
debian系的
#apt-get install php-pear
#apt-get install php5-imagick imagemagick
后面和上面centos的一样,
只是不需要修改php.ini 加入imagick 扩展.
2:vim 里面
:!php -l % 这个是检查当前php文件语法参数
:phpcs 这个就是code sniffer了
:phpmd 这个是mess detector , 需要一个XML规则文件如果没有设置
:phpcc 这个显示code coverage. 也需要一个XML规则文件如果没有设置
3:安装phpqa.vim
https://github.com/rainysia/vimrc/commits/master
去clone下来,放到$~.vim里面, 注意是user下面的.vim
在.vimrc里面加上
let g:phpqa_codesniffer_args = "--standard=Zend" let g:phpqa_codesniffer_cmd = '/usr/bin/phpcs' let g:phpqa_codesniffer_autorun = 1 " default =1 on save let g:phpqa_messdetector_ruleset = '' let g:phpqa_messdetector_cmd = '/usr/bin/phpmd' let g:phpqa_messdetector_autorun = 0
其中cmd 这两个是上面第一步安装后 type出来的路径,
2013-10-31 更新
参数里面的 --standard=Zend 意思是codesniffer采用Zend的编码风格来效验。 你可以自定义一些效验规则, 这个规则在debian里面
/usr/share/php/PHP/CodeSniffer/Standards/
里面,你可以把自定义的放进去。然后把
let g:phpqa_codesniffer_args = "--standard=Zend"
改为
let g:phpqa_codesniffer_args = "--standard=自定义的"
就可以使用自定义的代码风格效验了.
参数参考
http://pear.php.net/manual/en/package.php.php-codesniffer.config-options.php
#type phpcs
/usr/bin/phpcs
autorun = 1是自动开启 ,当你保存的时候就会自动运行提示了
把下面的内容保存为phpmd.xml ,保存在vim文件里面,然后打开任意的php文件,保存的时候会提示让你输入phpmd的文件所在,填你刚才保存的路径和phpmd.xml 然后就可以了
<?xml version="1.0"?> <ruleset name="Sebastian" xmlns="http://pmd.sf.net/ruleset/1.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemalocation="http://pmd.sf.net/ruleset/1.0.0 http://pmd.sf.net/ruleset_xml_schema.xsd" xsi:nonamespaceschemalocation="http://pmd.sf.net/ruleset_xml_schema.xsd"> <description>Sebastian Bergmann's ruleset</description> <rule ref="rulesets/codesize.xml/CyclomaticComplexity"></rule> <rule ref="rulesets/codesize.xml/NPathComplexity"></rule> <rule ref="rulesets/codesize.xml/ExcessiveClassComplexity"></rule> <rule ref="rulesets/codesize.xml/ExcessiveClassLength"></rule> <rule ref="rulesets/codesize.xml/ExcessiveMethodLength"></rule> <rule ref="rulesets/codesize.xml/ExcessiveParameterList"></rule> <rule ref="rulesets/design.xml/EvalExpression"></rule> <rule ref="rulesets/design.xml/ExitExpression"></rule> <rule ref="rulesets/design.xml/GotoStatement"></rule> <rule ref="rulesets/naming.xml/ConstructorWithNameAsEnclosingClass"></rule> <rule ref="rulesets/unusedcode.xml/UnusedFormalParameter"></rule> <rule ref="rulesets/unusedcode.xml/UnusedLocalVariable"></rule> <rule ref="rulesets/unusedcode.xml/UnusedPrivateField"></rule> <rule ref="rulesets/unusedcode.xml/UnusedPrivateMethod"></rule> </ruleset>
现在做下测试,打开vim 输入<?php ?> 然后:w保存,提示错误,说php不能关闭..看来语法要求很严格. 去掉?> 然后保存就没错误提示了.
<?php ?>
具体的可以在shell里面 -h 查看使用
参考网址
http://phpmd.org/download/index.html 安装phpmd
http://pear.php.net/package/PHP_CodeSniffer/redirected php code sniffer
http://blog.csdn.net/xinhaozheng/article/details/3324796 php code sniffer的使用
http://developer.51cto.com/art/201105/261292.htm php mess detor的使用
http://coreymaynard.com/blog/finding-what-stinks-and-cleaning-up-the-mess/ 相关xml声明
http://joncairns.com/2012/05/using-vim-as-a-php-ide/#comment-133 phpqa的文章
https://github.com/joonty/vim-phpqa 还是phpqa的

如何在iPad键盘上将CapsLock重新映射为ESC准备好让CapsLock成为iPad上的ESC键了吗?这是您需要做的所有事情:在iPad上打开“设置”应用转到“常规”,然后转到“键盘”转到“硬件键盘”选择“修改键”选择“CapsLockKey”并选择“Escape”作为修饰键现在您已准备好通过按CapsLock在iPad上试用新的硬件ESC键。转到任何使用Escape键的应用程序,您可以立即对其进行测试,例如vi/vim。现在您可以使用物理键盘从

删除偶数行的方法如下::g/^/+1d上面用到了:gbobal命令,gbobal命令格式如下::[range]global/{pattern}/{command}global命令实际上是分成两步执行:首先扫描[range]指定范围内的所有行,给匹配{pattern}的行打上标记;然后依次对打有标记的行执行{command}命令,如果被标记的行在对之前匹配行的命令操作中被删除、移动或合并,则其标记自动消失,而不对该行执行{command}命令。{command}可以是一个ex命令,也可以是用|分隔

在 PHP 开发中,使用 Vim 是非常普遍的。然而,在 Alpine Linux 中安装 Vim 可能会遇到一些问题。本篇文章将分享如何在 Alpine Linux 上安装 Vim。

前言vim是个强大的文本编辑的工具,在Linux端得到极大的使用热度。最近在另外一台服务器上使用vim时,遇到了一个奇怪的问题:当我将本地编写好的脚本复制并粘贴到服务器中的空白文件时,出现了自动缩进的情况。用个简单的例子来说,就是我在本地写的脚本如下:aaabbbcccddd当我将上述内容复制后,粘贴到服务器中的空白文件后得到的却是:aabbbcccddd很明显,这是vim给我们自动进行了格式缩进。但是,这个自动有点不智能。这里记录下解决方案。解决方案:设置.vimrc配置文件我们在家目录下,新

Laravel是一个流行的PHP框架,它提供了一种叫做Tinker的交互式命令行工具。Tinker是通过命令行与应用交互的一种简单而强大的方式,使用它可以轻松地测试和调试Laravel应用程序。本文将介绍如何在Laravel中使用Tinker进行交互式调试,包括如何安装和使用它。安装TinkerTinker是Laravel的默认包,因此它已经包含在了Lara

在CentOS操作系统中,smbclient和vim是两个非常常用的工具,smbclient是一个用于与SMB/CIFS服务器进行通信的客户端工具,而vim是一款强大的文本编辑器,本文将详细介绍如何在CentOS上安装smbclient和vim,并提供一些相关的使用技巧。1.打开终端并以root用户身份登录。2.运行以下命令以更新系统软件包列表:```yumupdate3.运行以下命令以安装smbclient:yuminstallsmbclient4.系统将提示您确认安装,按下y键并按下回车键以

Vim分屏功能是通过分割窗口来实现的,这是提高工作效率的一大利器。无论我们想同时显示两个文件,或者同时显示一个文件的两个不同的位置,又或者并排比较两个文件,等等,这些都能通过分屏来实现,这样子很方便代码的比对和复制粘贴。


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

Dreamweaver Mac version
Visual web development tools

MinGW - Minimalist GNU for Windows
This project is in the process of being migrated to osdn.net/projects/mingw, you can continue to follow us there. MinGW: A native Windows port of the GNU Compiler Collection (GCC), freely distributable import libraries and header files for building native Windows applications; includes extensions to the MSVC runtime to support C99 functionality. All MinGW software can run on 64-bit Windows platforms.

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Atom editor mac version download
The most popular open source editor

Notepad++7.3.1
Easy-to-use and free code editor
