当我输入 phpcs --version 时,我没有得到版本号,而是得到如下内容:
/Applications/drupal/php/bin/phpcs: line 2: ?php: No such file or directory
/Applications/drupal/php/bin/phpcs: line 3: /Applications: is a directory
/Applications/drupal/php/bin/phpcs: line 4: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 5: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 6: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 7: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 8: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 9: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 10: Applications: command not found
/Applications/drupal/php/bin/phpcs: line 11: syntax error near unexpected token `newline'
/Applications/drupal/php/bin/phpcs: line 11: ` * @author Greg Sherwood <[email protected] /cdn-cgi/l/email-protection>'
看起来它没有正确读取 PHP。我配置错误了什么?
我所做的就是 sudo pear install PHP_CodeSniffer。当我再次运行它时,我得到:
pear/PHP_CodeSniffer 已安装,与发布版本 1.3.5 相同
当 PEAR 安装 PHP_CodeSniffer 时,它会更改主 phpcs 脚本中的第一行,以便#!
行指向系统上的 PHP 可执行文件。
所以在安装之前,该行看起来像这样:#!@php_bin@
安装后,它将看起来像这样(取决于 PHP 的安装位置):#!/usr/bin/php
PEAR 有一个配置设置,告诉它 PHP 可执行文件的安装位置。你可以通过运行看到这个值pear config-show
并寻找价值PHP CLI/CGI binary (php_bin)
。您需要确保该值实际上是系统上 PHP 的位置,否则所有安装的脚本(如 PHPUnit)都会遇到类似的问题。
检查该值的最佳方法是运行which php
并为 PEAR 配置变量设置该值。然后重新安装 PHP_CodeSniffer 以便再次完成替换。
所以对于我的系统,我会这样做:
$ which php
/usr/bin/php
$ sudo pear config-set php_bin /usr/bin/php
config-set succeeded
$ sudo pear uninstall php_codesniffer
uninstall ok: channel://pear.php.net/PHP_CodeSniffer-1.3.5
$ sudo pear install php_codesniffer
downloading PHP_CodeSniffer-1.3.5.tgz ...
Starting to download PHP_CodeSniffer-1.3.5.tgz (345,113 bytes)
......................................................................done: 345,113 bytes
install ok: channel://pear.php.net/PHP_CodeSniffer-1.3.5
如果一切顺利,您应该会看到正确的#!
新 phpcs 文件中的行:
$ which phpcs
/usr/local/bin/phpcs
$ head -n 1 /usr/local/bin/phpcs
#!/usr/bin/php
如果看起来正确,您将能够毫无问题地运行 phpcs 命令。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)