[解決済み] Composerを使わずにComposerのPHPパッケージをインストールするにはどうしたらいいですか?
質問
Coinbase PHP API をインストールしようとしていますが、Composer が必要です。
https://github.com/coinbase/coinbase-php
Composer を使用せずに composer パッケージを直接サーバーにインストールできるような、普遍的な PHP ソリューション (おそらく関数) を探しています。
Composerの開発者は自分たちが人々を助けていると信じていると思いますが、実際には何千人もの初心者開発者が「Composerの壁」によってウェブ開発の学習から締め出されているのです。
柔軟な解決策や、Composer なしでインストールできるようなアプローチがあれば本当に助かるのですが。どうすればよいのでしょうか。
皮肉なコメントで反応しないでください。 . Composer を使いたくないという人もいますし、Web 開発をするために特定のサードパーティ製ソフトウェアに群がる必要はないと思います。
どのように解決するのですか?
この
composer.json
ファイル
は依存関係をリストアップします。あなたの例では
"require": {
"php": ">=5.5.0",
"guzzlehttp/guzzle": "^6.0",
"psr/http-message": "^1.0",
"psr/log": "^1.0"
},
次に、対応するパッケージを
パッカジスト
のサイトで対応するパッケージを見つけなければなりません。それぞれの依存関係に対して同じプロセスを繰り返します: 追加の依存関係を対応する
composer.json
ファイルで追加の依存関係を見つけ、再度検索します。
最終的に必要なパッケージの完全なリストを手に入れたら、あとはそれらをひとつずつインストールするだけです。ほとんどの場合、プロジェクトディレクトリのどこかにファイルを置くだけでよいのです。しかし、PHP が必要なクラスを見つけられるようにする必要があります。Composer のオートローダを使用していないので、独自のオートローダに追加する必要があります。この情報は、それぞれの
composer.json
ファイルから把握できます。
"autoload": {
"psr-4": { "Coinbase\\Wallet\\": "src/" }
},
クラスのオートローダを使用しない場合は、個々の
require_once
ステートメントを理解する必要があります。ほとんどのライブラリの作者はそれを文書化することを気にしないので、おそらく多くの試行錯誤が必要でしょう。
また、この件に関して混乱がある場合に備えて。
- Composer には、Windows 用の公式 GUI インストーラーと コピーアンドペースト コマンドラインのインストール手順があります。
- Composer はローカルで実行でき、その出力は他の場所にアップロードするだけです。共有ホスティングで SSH を使用する必要はありません。
- ライブラリをインストールするのに必要なコマンドは、パッケージのウェブサイトからコピー&ペーストできます。パッケージメンテナがそれを文書化するのを気にしなかったとしても、packagist.org はデフォルトでそれを生成します。
Composer は完璧ではなく、すべてのユースケースに適合するわけではありませんが、それに依存するライブラリのインストールに関しては、間違いなく最良の代替案であり、かなりまともなものです。
私の回答の後に来た他の回答を確認しました。それらはほとんど2つのカテゴリに分類されます。
- ライブラリをインストールし、それを使用してカスタムのダウンロード スクリプトを記述します。
- Composer 用のオンライン Web ベースのインターフェイスを使用する
私が何かを見逃していない限り、どれも OP で表明された不満に対処していません。
- 学習曲線
- サードパーティソフトウェアの使用
- サーバー上で直接開発可能 (SSHを使用すると思われます)
- 深い依存関係ツリー
関連
-
[解決済み】phpMyAdmin: シークレットパスフレーズ?
-
[解決済み】Netbeans 7.4 for PHPで「スーパーグローバルな$_POST配列に直接アクセスしないでください」という警告が発生する。
-
[解決済み] PHPで配列から要素を削除する
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] PHPでHTML/XMLをパースして処理する方法とは?
-
[解決済み] PHPのエラーを表示させるにはどうしたらいいですか?
-
[解決済み] PHPのstartWith()関数とendsWith()関数
-
[解決済み] Composerを使用して特定のバージョンのパッケージをインストールする方法は?
-
[解決済み】PHPの'foreach'は実際どのように動作するのですか?
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】XAMPPポート80をPID 4の「Unable to open process」が使用中 [重複] XAMPPポート80をPID 4の「Unable to open process」が使用中。]
-
[解決済み】stdClassクラスのオブジェクトが文字列に変換されない。
-
[解決済み】foreach()に与えられた引数が無効です。)
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み】mysqli_select_db()は、パラメータ1がmysqliであることを期待し、文字列が与えられる。
-
[解決済み】phpMyAdmin: シークレットパスフレーズ?
-
[解決済み] [Solved] Fatal error: 非オブジェクトのメンバ関数fetch_assoc()の呼び出し [重複]。
-
[解決済み】書き込みコンテキストでメソッドの戻り値を使用することができない
-
[解決済み】mysqli::query(): mysqli をフェッチできない
-
[解決済み] PHP 未定義関数への呼び出し