我的设置:Mac OSX El Capitan 10.11.6,PHP 7.0.24-1 + ubuntu14.04.1,PEAR版本:1.10.5,我正在使用vagrant / virtualbox(vvv)进行本地wordpress构建。
我是梨和php_codesniffer的新手,似乎无法让phpcs命令工作。我一直在尝试使用pear安装PHP_CodeSniffer:
我的第一个问题是尝试安装PEAR时。我按照说明操作:
$ curl -O https://pear.php.net/go-pear.phar
& $ php -d detect_unicode=0 go-pear.phar
。
然后,当我尝试将/ usr / local / pear和Binaries Directory的安装基础配置为/ usr / local / bin时,出现以下错误:
Unable to create PHP code directory ($php_dir) /usr/local/pear/share/pear.
Run this script as root or pick another location.
我发现其他人有同样的错误并看到了这个解决方案:
sudo php /usr/lib/php/install-pear-nozlib.phar -d /usr/local/lib/php -b /usr/local/bin
但这引发了一个错误:
Could not open input file: /usr/lib/php/install-pear-nozlib.phar
然后我尝试使用:/ home / vagrant / pear配置pear。我能够安装PHP_codesniffer,当我使用pear list
时,我可以看到php_codesniffer:
vagrant @ vvv:〜$ pear list 安装包,频道pear.php.net: 包版本状态 Archive_Tar 1.4.3稳定 Console_Getopt 1.4.1稳定 PHP_CodeSniffer 3.1.1稳定 Structures_Graph 1.1.1稳定 XML_Util 1.4.2稳定
当我运行phpcs时,我收到以下消息:程序'phpcs'目前尚未安装。要运行'phpcs',请让管理员安装软件包'php-codesniffer'
我找到了这个this bug report:这促使我:sudo pear config-set php_bin / usr / bin / php,然后卸载并重新安装codesniffer。一切似乎都正常,但是当我尝试哪些phpcs时,什么都没有。
我已经安装和卸载了几次梨。当我尝试卸载时,它表示没有安装pear,但是当我which pear
时,我得到usr/bin/pear
。这有点乱,任何建议都会非常感激。
答案 0 :(得分:1)
PEAR在2017年已经过时了。
您现在应该使用composer :
composer require squizlabs/php_codesniffer --dev
然后像:
一样运行vendor/bin/phpcs ...
要获得有关PEAR超时的更多详细信息,请RFC about PEAR removal for PHP 8。