2017-10-13 115 views
0

我正在嘗試在我的PHP腳本中使用https://github.com/phpWhois/phpWhois,但無法使其工作。當談到使用Composer時,我絕對是初學者。無法讓Composer在Windows上工作

這是我的嘗試:

  • 克隆的git回購本地​​
  • 安裝作曲家爲Windows
  • 在PowerShell中,瀏覽到本地存儲庫
  • 類型化composer require。作曲家第一次問我:Search for a package:,在那裏我只是按了ENTER。然後,Composer在供應商目錄(phpunit,symfony,sebastian等)中安裝了各種軟件包,並創建了一個autoload.php文件。

但是,如果我包括autoload.php在我的例子中的腳本(phpWhois Github的主頁上的基本的例子),它會生成以下錯誤:

Fatal error: Class 'phpWhois\Whois' not found in /home/myServer/www/myApp/api/whoistest.php on line 12

好,GitHub的頁面上的安裝手冊說我應該運行

php composer.phar require "phpwhois/phpwhois":"~4.0" 

於是,我在PowerShell控制檯執行以下操作:

composer require "phpwhois/phpwhois":"~4.0" 

[UnexpectedValueException]

Could not parse version constraint :~4.0: Invalid version string ":~4.0"

然後此:

composer require "phpwhois/phpwhois" 

Problem 1

  • Conclusion: remove phpwhois/phpwhois dev-master
  • Can only install one of: phpwhois/phpwhois[dev-master, 4.2.3].
  • Can only install one of: phpwhois/phpwhois[dev-master, 4.2.4].
  • Can only install one of: phpwhois/phpwhois[v4.2.5, dev-master].
  • Installation request for phpwhois/phpwhois dev-master -> satisfiable by phpwhois/phpwhois[dev-master].
  • Installation request for phpwhois/phpwhois ^4.2 -> satisfiable by phpwhois/phpwhois[4.2.3, 4.2.4, v4.2.5].

然後此:

composer require "phpwhois/phpwhois:~4.0" 

這給了相同的錯誤如上。

我試過各種其他的語法來指定版本,但沒有一個能夠工作。

任何想法?

回答

1

好吧,讓我們從頭開始。

  1. 下載從getcomposer.org最新composer.phar(向下滾動到手動安裝)。
  2. 把它放在你的項目根目錄下。
  3. 從您的composer.json中刪除所有您當前的要求陳述。
  4. 打開一個終端並導航到您的項目根目錄。
  5. 執行php composer.phar require phpwhois/phpwhois
  6. 執行php composer.phar install
  7. 在代碼中包含自動加載器:require vendor/autoload.php
+0

謝謝,我只是按照這些步驟。但是,我仍然得到相同的致命錯誤:Class'phpWhois \ Whois'在第12行錯誤/home/myServer/www/myApp/api/whoistest.php中找不到。我怎樣才能獲得關於這個錯誤的更多信息? –

+0

啊,似乎從示例中使用phpWhois \ Whois'聲明是沒有必要的。如果我刪除該聲明,它工作正常。 –

+0

我認爲你應該閱讀PHP中的命名空間=)你可以使用一個類,或者使用完全限定的名稱來調用它,但不能同時使用它們。 – chocochaos