搜尋

首頁  >  問答  >  主體

在沒有Composer的情況下,如何安裝Composer PHP套件?

<p>我正在嘗試安裝Coinbase PHP API,但它需要Composer:</p> <p>https://github.com/coinbase/coinbase-php</p> <p>我正在尋找一個通用的PHP解決方案(也許是一個函數),讓我能夠直接在伺服器上安裝Composer包,而不必使用Composer。 </p> <p>我認為Composer的開發人員認為他們在幫助人們,但實際上有成千上萬的初學者開發人員因為「Composer障礙」而無法學習Web開發。 </p> <p>如果有一個靈活的解決方案或某種方法可以在沒有Composer的情況下安裝?我該怎麼做? </p> <p><strong>請不要回覆一些諷刺的評論</strong>。有些人不想使用Composer,我不明白為什麼我們應該被迫使用特定的第三方軟體來進行Web開發。 </p>
P粉278379495P粉278379495568 天前696

全部回覆(2)我來回復

  • P粉268654873

    P粉2686548732023-08-23 11:06:27

    您可以嘗試https://php-download.com/,它可以幫助您大部分時間下載所有依賴項,並附帶vendor資料夾。它承諾不需要composer。 我自己試過了。它會找到並創建所有所需的資料夾,並將其壓縮以供下載。完美運行! !

    回覆
    0
  • P粉403804844

    P粉4038048442023-08-23 00:15:59

    在你的範例中,composer.json檔案列出了依賴項。

    "require": {
        "php": ">=5.5.0",
        "guzzlehttp/guzzle": "^6.0",
        "psr/http-message": "^1.0",
        "psr/log": "^1.0"
    },

    然後,你需要在packagist網站上找到對應的套件。對於每個依賴項,重複相同的過程:在它們對應的composer.json檔案中找到其他依賴項並再次搜尋。

    當你最終獲得了所需包的完整清單後,你只需要逐一安裝它們。在大多數情況下,只需要將文件放在專案目錄中的某個位置。但你也必須確保PHP能夠找到所需的類別。由於你沒有使用Composer的自動載入器,你需要將它們加入自己的自訂自動載入器。你可以從相應的composer.json文件中獲取信息,例如:

    "autoload": {
        "psr-4": { "Coinbase\Wallet\": "src/" }
    },

    如果你不使用類別自動載入器,你需要找出各個require_once語句。由於大多數庫作者不會關心這一點,所以你可能需要進行很多試錯。

    此外,以防有關此事的混淆:

    • Composer有一個官方的Windows圖形介面安裝程式和一個適用於所有平台的複製貼上命令列安裝過程。
    • Composer可以在本地運行,其輸出可以上傳到其他地方。你不需要在共享主機上使用SSH。
    • 安裝庫所需的命令可以從套件的網站上複製貼上,即使套件的維護者不願意對其進行文件化,packagist.org也會預設產生該命令。

    Composer並不完美,也不適用於所有用例,但是,當要安裝依賴它的庫時,它無疑是最好的選擇,而且是一個相當不錯的選擇。


    我查看了我的回答之後的其他答案。它們主要分為兩類:

    1. 安裝庫並編寫一個自訂的下載腳本
    2. 使用基於Web的Composer線上介面

    除非我漏掉了什麼,否則它們都沒有解決OP提出的問題:

    • 學習曲線
    • 使用第三方軟體
    • 可能在伺服器上進行開發(使用SSH,我推測)
    • 潛在的深度依賴樹

    回覆
    0
  • 取消回覆