Этот вопрос был рассмотрен раньше, и я попытался предложить решения и подумал, что я делаю что-то неправильно. Я пытаюсь настроить PHP Codesniffer на Mac с помощью Mountaion Lion. Я не думаю, что это важно, но я использую XAMMP. При запуске phpcs возникает следующая ошибка.Неверный include_path для Codesniffer
Warning: include_once(PHP/CodeSniffer/CLI.php): failed to open stream: No such file or directory in /usr/bin/phpcs on line 31
Warning: include_once(): Failed opening 'PHP/CodeSniffer/CLI.php' for inclusion (include_path='.:') in /usr/bin/phpcs on line 31
Fatal error: Class 'PHP_CodeSniffer_CLI' not found in /usr/bin/phpcs on line 34
Эта ошибка, основанная на всех результатах поиска, связана с неправильным include_path в php.ini. Как я понимаю, этот путь должен быть каталогом, в котором находится груша. Когда я запускаю pear config-get php_dir, он возвращает/usr/lib/php/pear. Я ожидал этого. Так что я изменил файл php.ini (этот файл является единственным php.ini в системе, так что это не захватывая настройки из другого файла) следующим образом:
include_path = ".:/usr/lib/php/pear/"
Это выглядит правильно, но я держу получив ту же ошибку. Я удалил ведущий.: И это не помогает ... и он не должен работать. Я также удалил конечный/и тот же результат. Обратите внимание, что phpcs находится в каталоге usr/bin. Ниже приведен результат выполнения грушевого конфигурации-шоу
Configuration (channel pear.php.net):
=====================================
Auto-discover new Channels auto_discover 1
Default Channel default_channel pear.php.net
HTTP Proxy Server Address http_proxy <not set>
PEAR server [DEPRECATED] master_server pear.php.net
Default Channel Mirror preferred_mirror pear.php.net
Remote Configuration File remote_config <not set>
PEAR executables directory bin_dir /usr/bin
PEAR documentation directory doc_dir /usr/lib/php/pear/docs
PHP extension directory ext_dir /usr/lib/php/extensions/no-debug-non-zts-20090626
PEAR directory php_dir /usr/lib/php/pear
PEAR Installer cache directory cache_dir /private/tmp/pear/cache
PEAR configuration file cfg_dir /usr/lib/php/pear/cfg
directory
PEAR data directory data_dir /usr/lib/php/pear/data
PEAR Installer download download_dir /private/tmp/pear/download
directory
PHP CLI/CGI binary php_bin /usr/bin/php
php.ini location php_ini /private/etc/php.ini
--program-prefix passed to php_prefix <not set>
PHP's ./configure
--program-suffix passed to php_suffix <not set>
PHP's ./configure
PEAR Installer temp directory temp_dir /JimS/temp
PEAR test directory test_dir /usr/lib/php/pear/tests
PEAR www files directory www_dir /usr/lib/php/pear/www
Cache TimeToLive cache_ttl 3600
Preferred Package State preferred_state stable
Unix file mask umask 22
Debug Log Level verbose 1
PEAR password (for password <not set>
maintainers)
Signature Handling Program sig_bin /usr/local/bin/gpg
Signature Key Directory sig_keydir /private/etc/pearkeys
Signature Key Id sig_keyid <not set>
Package Signature Type sig_type gpg
PEAR username (for username <not set>
maintainers)
User Configuration File Filename /Users/JimS/.pearrc
System Configuration File Filename /private/etc/pear.conf
Любые идеи? Я склонен к опечаткам, так что это всегда возможность, поэтому все, что я здесь помещаю, - вырезать/вставить.
Как вы меняете include_path, появляется сообщение об ошибке, чтобы показать вам новый путь? Если нет, запустите 'php --ini', чтобы увидеть, какой файл ini (если есть) используется. –
Привет, Грег, спасибо за ответ. В системе есть только один php.ini. Когда я запускаю php -ini, он возвращает: Файл конфигурации (php.ini) Путь:/etc Загруженный файл конфигурации: (нет) Сканирование дополнительных файлов .ini в: (none) Дополнительные файлы .ini, обработанные: (none) – user1342600
Ваш другой php.ini может использоваться для Apache или другого веб-сервера, иначе он еще не может быть использован. Попробуйте скопировать этот php.ini в /etc/php.ini, и это может быть ваша строка командной строки, которую вы сейчас редактируете. Посмотрите, работает ли он после его размещения. –