• phan—php语法静态检查在windows下的配置


    php7推出了语法树,于是静态语法分析更方便了。(可以直接下载我配置好的,传送门百度网盘

    1、先安装php7,到http://windows.php.net/下载php7带openssl的。

    2、修改php.ini,

    extension=php_openssl.dll
    extension=php_sockets.dll
    extension=php_sqlite3.dll
    extension=php_pdo_sqlite.dll

    前面的分号去掉,这一步是为了安装composer。

    3、安装composer,我安装失败,直接下载composer.phar

    新建一个批处理composer.bat

    @echo off
    "%~dp0php.exe" "%~dp0composer.phar" %*

    修改composer源为中国镜像,

    composer config -g repo.packagist composer http://packagist.phpcomposer.com

    4、安装php_ast模块,phan需要,把dll放到ext目录,

    extension增加一行

    extension=php_ast.dll

    5、安装phan

    打开命令行切换到php7的目录,运行

    composer require --dev "etsy/phan:dev-master"

    phan的详细使用可参考

    https://github.com/etsy/phan

    6、分析项目

    新建一个批处理,比如,先分析F:worksrc下的php代码,再用sed删除没有用的提示。

    @echo off
    set src=F:worksrc
    set phIn=%src%phan_in.txt
    set phOut=%src%phan_out.txt
    find %src% -type f -name "*.php" > %phIn%
    phan -f %phIn% -o %phOut%
    sed -i "/Phalcon/d" %phOut%
    sed -i "/redis/d" %phOut%
    sed -i "/memcached/d" %phOut%
    sed -i "/vendor/d" %phOut%
    echo "语法检查已完成,请查看%phOut%"
    @pause

    find和sed在windows下没有,不过有native的port,不需要cygwin和mingw

    下载http://sourceforge.net/projects/unxutils/files/latest/download

    http://unxutils.sourceforge.net/UnxUpdates.zip

    解压后,用UnxUpdates覆盖UnxUtilsusrlocalwbin,取出sed和find即可。

    7、可以为phan新建批处理和phan目录平级,phan.bat

    @echo off
    "%~dp0php.exe" "%~dp0phanphan" %*

    把php.exe所在目录放入环境变量PATH里,这样可以配置一些ide,调用phan.bat检查当前代码。

  • 相关阅读:
    传球游戏(NOIP2008 普及组第三题)
    立体图(NOIP2008 普及组第四题)
    多项式输出(NOIP2009 普及组第一题)
    分数线划定(NOIP2009 普及组第二题)
    第5到8章
    第四章总结
    实验九
    实验五
    实验四
    实验三
  • 原文地址:https://www.cnblogs.com/xdao/p/phan_windows.html
Copyright © 2020-2023  润新知