在Mac上运行代码嗅探器时出现问题


Issue running code sniffer on Mac

我正在尝试安装php代码嗅探器。我已经设法达到了跑步后php /Users/ryanfernandes/pear/bin/phpcs --version显示信息。但是当我尝试通过运行代码嗅探器时

php /Users/username/pear/bin/phpcs /Users/username/development/htdocs/test.php 
PHP Warning:  fwrite() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 155
Warning: fwrite() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 155
PHP Warning:  stream_get_meta_data() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 206
Warning: stream_get_meta_data() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 206
PHP Warning:  file_get_contents(): Filename cannot be empty in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 208
Warning: file_get_contents(): Filename cannot be empty in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 208
PHP Warning:  fclose() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 209
Warning: fclose() expects parameter 1 to be resource, boolean given in /Users/username/pear/share/pear/PHP/CodeSniffer/Reporting.php on line 209

如有任何帮助,我们将不胜感激。

感谢

从错误消息来看,您使用的似乎是PHPCodeSniffer 1.5.4版本。PHPCodeSniffer使用tmpfile()函数创建一个临时文件。创建它的目录可以通过运行找到

php -r 'echo sys_get_temp_dir().PHP_EOL;'

确保允许您写入该目录,因为tmpfile()方法显然返回FALSE,如果目录不可写,则最常见的情况是返回FALSE。