2015-01-15 98 views
7

我的Ubuntu 14.04 +崇高的文本3和安裝phpcs包什麼是phpmd以及如何使用它?

additionalty我有我的系統上安裝phpcsphp-cs-fixer

this blog

我發現phpmdPHP混亂探測器)也是一個必需的庫,因此根據official php md頁上給出的說明安裝phpmd使用替代方法從github存儲庫一切都完成了。

:~/phpmd$ curl -s http://getcomposer.org/installer | php 
#!/usr/bin/env php 
All settings correct for using Composer 
Downloading... 

Composer successfully installed to: /home/keshav/phpmd/composer.phar 
Use it: php composer.phar 

但現在,當我寫終端

phpmd /opt/lampp/htdocs/myproject, myfile.php 

phpmd:找不到命令

phpmd對主目錄和一切文件夾中沒有任何錯誤。

我有核心PHP的本地項目在項目文件夾中創建composer.json根據建議github

請告訴我通過

拿什麼然後在你的項目中安裝作曲(或直接下載composer.phar):

+0

「phpmd(PHP Mess Detector)也是必需的庫」 - 需要什麼?你究竟在做什麼? –

+0

'phpcs'需要它在博客中提到,鏈接寫在問題 – diEcho

+0

phpcs不需要phpmd。這些是獨立的工具。 –

回答

20

我認爲這個問題是你已經安裝phpmd在本地目錄中,但您正在嘗試使用它,就好像它是全局安裝的一樣。

對引用網站的安裝說明無法做得更清楚。由於您已經安裝了phpcs和php-cs-fixer,並且可以爲您工作,只需按照phpmd中的類似說明操作即可。這些都是PHP項目,並以類似的方式安裝。

無論如何,要使用phpmd作爲全局命令,您有幾個選項。

Github上

克隆github repository就像你一樣,並添加phpmd bin目錄your PATH variable

全球作曲家安裝

使用作曲家global command在全球範圍內安裝phpmd。您還需要確保作曲家的bin目錄位於PATH。默認情況下它是~/.composer/vendor/bin

composer global require phpmd/phpmd 

此命令將安裝phpmd全球範圍內,並儘快~/.composer/vendor/bin是在你的PATH你就可以通過簡單地調用phpmd調用它。

它作曲家的文檔中很好的解釋:https://getcomposer.org/doc/03-cli.md#global

下載藥業存檔

這是你可以做最簡單的事情。只需進入phpmd releaseschoose the latest並下載the phar archive

將phar文件放到任何你想要的地方。請記住,它需要在您的PATH。您也可以重新命名,以跳過.phar擴展名。

例如:

wget http://static.phpmd.org/php/2.1.3/phpmd.phar 
sudo mv phpmd.phar /usr/bin/phpmd 
sudo chmod +x /usr/bin/phpmd 

泊塢容器

首先,static analysis tools for PHP取搬運工圖像:

git pull jakzal/phpqa 

一個由圖像提供的工具是phpmd。下面的命令將在Docker容器中運行phpmd並將當前工作目錄掛載爲/項目。

docker run -it --rm -v $(pwd):/project -w /project jakzal/phpqa \ 
    phpmd src text cleancode,codesize,controversial,design,naming,unusedcode 
+0

你還需要確保作曲家的bin目錄是** int ** PATH。 ?? – diEcho

+0

您需要將其添加到PATH,或使用完整路徑:〜/ .composer/vendor/bin/phpmd。請參閱參考文檔。 –

+0

我有**/home//phpmd **其中'setup','src'和'vendor'文件夾所在的文件夾,對於PATH,我有'.profile' http://pastebin.com/w6C12JUP – diEcho

0

當您使用基於composer安裝,它被安裝到./vendors目錄中的./bin目錄。所以對我來說,相對於我的項目的根目錄下,就在這裏:

./vendor/bin/phpmd

,我能夠通過運行./vendor/bin/phpmd . text codesize從我的項目的根目錄下運行它。 (我還沒有得到任何有用的輸出,但另一個問題)

相關問題