PHP 依存関係管理ツール Composer の入門チュートリアル
Composer は、PHP の依存関係管理ツールです。これにより、プロジェクトが依存するコード ライブラリを宣言でき、それらがプロジェクトにインストールされます。
依存関係管理
Composer はパッケージ マネージャーではありません。はい、これには「パッケージ」と「ライブラリ」が含まれますが、プロジェクトごとに管理され、プロジェクト内の特定のディレクトリ (ベンダーなど) にインストールされます。デフォルトでは、グローバルには何もインストールされません。したがって、これは単なる依存関係の管理です。
このアイデアは新しいものではなく、Composer はノードの npm と Ruby のバンドラーから強く影響を受けています。当時、PHP 用の同様のツールはありませんでした。
Composer は次のように問題を解決します:
複数のライブラリに依存するプロジェクトがあります。
これらのライブラリの一部は他のライブラリに依存しています。
何に依存しているかを宣言します。
Composer は、どのバージョンのパッケージをインストールする必要があるかを判断し、それらをインストールします (プロジェクトにダウンロードします)。
依存関係を宣言する
プロジェクトを作成していて、ログ記録用のライブラリが必要だとします。あなたはmonologを使用することにしました。これをプロジェクトに追加するには、プロジェクトの依存関係を記述したcomposer.jsonファイルを作成するだけです。
{ "require": { "monolog/monolog": "1.2.*" } }
私たちのプロジェクトには、1.2 以降のバージョンのいくつかの monolog/monolog パッケージが必要であることを指摘しておきます。
システム要件
Composer を実行するには、PHP 5.3.2 以降が必要です。いくつかの機密性の高い PHP 設定とコンパイル フラグも必要ですが、インストーラーは非互換性について警告をスローします。
単に zip ファイルをダウンロードするのではなく、パッケージのソースから直接インストールします。ロードしているパッケージで使用されているバージョン管理システムに応じて、 git 、 svn 、または hg が必要になります。
Composer はマルチプラットフォームであり、Windows、Linux、OSX プラットフォームで同等に動作するように努めています。
Linux/Unix でのインストール
部分インストール
Composer を実際に入手するには、2 つのことを行う必要があります。まず Composer をインストールします (これは、Composer がプロジェクトにダウンロードされることを意味します):
curl -sS https://getcomposer.org/installer | php
注: 上記の方法が何らかの理由で失敗した場合は、php > 経由でインストーラーをダウンロードすることもできます:
php -r "readfile('https://getcomposer.org/installer');" | php
これは、いくつかのチェックを行いますPHP 設定を確認し、composer.phar を作業ディレクトリにダウンロードします。これは Composer バイナリです。これは PHAR パッケージ (PHP アーカイブ) であり、ユーザーがコマンド ラインで一部の操作を実行するのに役立つ PHP アーカイブ形式です。
--install-dir オプションを使用して Composer インストール ディレクトリを指定できます (絶対パスまたは相対パスを指定できます):
curl -sS https://getcomposer.org/installer | php -- --install-dir=bin
グローバル インストール
このファイルはどこにでも配置できます。システムの PATH ディレクトリに置くと、グローバルにアクセスできます。 Unix 系システムでは、php プレフィックスなしで使用することもできます。
これらのコマンドを実行して、システム内でグローバルにコンポーザー呼び出しを行うことができます:
curl -sS https://getcomposer.org/installer | php mv composer.phar /usr/local/bin/composer
注: 権限が原因でアピールコマンドが失敗した場合は、sudo を使用して mv コマンドを再度実行してください。 これで、php combos.phar と入力しなくても、composer コマンドを実行するだけで Composer を使用できるようになります。
グローバル インストール (homebrew 経由で OSX 上)
Composer は homebrew-php プロジェクトの一部です。
brew update brew tap josegonzalez/homebrew-php brew tap homebrew/versions brew install php55-intl brew install josegonzalez/php/composer
Windows でのインストール
インストーラーを使用します
これは、Composer をマシンにインストールする最も簡単な方法です。
Composer-Setup.exe をダウンロードして実行すると、最新バージョンの Composer がインストールされ、システム環境変数が設定されるため、任意のディレクトリで直接 Composer コマンドを使用できるようになります。
手動インストール
システム環境変数 PATH を設定し、インストール コマンドを実行して、composer.phar ファイルをダウンロードします:
C:\Users\username>cd C:\bin C:\bin>php -r "readfile('https://getcomposer.org/installer');" | php
注: readfile エラー メッセージが表示された場合は、http リンクを使用するか、php で php_openssl.dll を有効にしてください。 .ini。 新しいファイルcomposer.pharと同じディレクトリにcomposer.batを作成します:
C:\bin>echo @php "%~dp0composer.phar" %*>composer.bat
現在のコマンドラインウィンドウを閉じて、テスト用に新しいコマンドラインウィンドウを開きます:
C:\Users\username>composer -V Composer version 27d8904
Composerを使用します
次に、Composerを使用してプロジェクトの依存関係。
依存関係を解決してダウンロードするには、インストール コマンドを実行してください:
php composer.phar install
グローバルにインストールし、現在のディレクトリに phar ファイルがない場合は、代わりに次のコマンドを使用してください:
composer install
上記の例を続けると、monolog はここからダウンロードできます。vendor/monolog/monolog ディレクトリに移動します。
自動ロード
ライブラリのダウンロードに加えて、Composer は、Composer によってダウンロードされたライブラリ内のすべてのクラス ファイルをロードできる自動ロード ファイルも用意しています。これを使用するには、次のコード行をプロジェクトのブートストラップ ファイルに追加するだけです:
require 'vendor/autoload.php';
これで、monolog を使用できるようになりました。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Laravelは、Webアプリケーションを簡単に構築するためのPHPフレームワークです。次のような強力な機能を提供します。インストール:Laravel CLIを作曲家にグローバルにインストールし、プロジェクトディレクトリにアプリケーションを作成します。ルーティング:ルート/web.phpのURLとハンドラーの関係を定義します。ビュー:リソース/ビューでビューを作成して、アプリケーションのインターフェイスをレンダリングします。データベース統合:MySQLなどのデータベースとのすぐ外側の統合を提供し、移行を使用してテーブルを作成および変更します。モデルとコントローラー:モデルはデータベースエンティティを表し、コントローラーはHTTP要求を処理します。

CraftCMSを使用してWebサイトを開発する場合、特にCSSやJavaScriptファイルを頻繁に更新する場合、リソースファイルのキャッシュ問題が発生することがよくあります。古いバージョンのファイルがブラウザによってキャッシュされ、ユーザーが最新の変更を表示しないようにすることがあります。この問題は、ユーザーエクスペリエンスに影響を与えるだけでなく、開発とデバッグの難しさを高めます。最近、プロジェクトで同様のトラブルに遭遇し、いくつかの調査の後、プラグインWiejeben/Craft-Laravel-Mixが見つかりました。

多数の教義エンティティを含むプロジェクトに取り組んでいるとき、私は厳しい問題を抱えていました。エンティティがシリアル化され、脱必要にされるたびに、パフォーマンスは非常に非効率的になり、システムの応答時間が大幅に増加します。複数の最適化方法を試しましたが、うまくいきません。幸いなことに、Sidus/Doctrine-Serializer-Bundleを使用することで、この問題をうまく解決し、プロジェクトのパフォーマンスを大幅に改善しました。

まだ人気があるのは、使いやすさ、柔軟性、強力なエコシステムです。 1)使いやすさとシンプルな構文により、初心者にとって最初の選択肢になります。 2)Web開発、HTTP要求とデータベースとの優れた相互作用と密接に統合されています。 3)巨大なエコシステムは、豊富なツールとライブラリを提供します。 4)アクティブなコミュニティとオープンソースの性質は、それらを新しいニーズとテクノロジーの傾向に適応させます。

eコマースプラットフォームを開発する場合、適切なフレームワークとツールを選択することが重要です。最近、機能が豊富なeコマースのウェブサイトを構築しようとしていたとき、私は困難な問題に遭遇しました。スケーラブルで完全に機能的なeコマースプラットフォームをすばやく構築する方法です。複数のソリューションを試してみて、FecmallのAdvanced Projectテンプレート(Fecmall/FBBCBase-App-Advanced)を選択することになりました。 Composerを使用することにより、このプロセスは非常にシンプルで効率的になります。作曲家は次のアドレスを通して学ぶことができます:学習アドレス

eコマースのWebサイトを開発するとき、私は困難な問題に遭遇しました。ユーザーにパーソナライズされた製品の推奨事項を提供する方法です。当初、私はいくつかの簡単な推奨アルゴリズムを試しましたが、結果は理想的ではなく、ユーザーの満足度も影響を受けました。推奨システムの精度と効率を改善するために、より専門的なソリューションを採用することにしました。最後に、Andres-Montanez/Adcumentations Bundleを介してAndres-Montanez/Bundleをインストールしました。これは、問題を解決しただけでなく、推奨システムのパフォーマンスを大幅に改善しました。次の住所から作曲家を学ぶことができます。

メールマーケティングキャンペーンを行う際には、HTML形式でメールを効率的に作成および送信する方法を実行する際に、トリッキーな問題が発生しています。従来のアプローチは、コードを手動で記述し、SMTPサーバーを使用して電子メールを送信することですが、これは時間がかかるだけでなく、エラーが発生しやすいことです。複数のソリューションを試した後、HTMLメールの作成と送信に役立つシンプルで使いやすいRestapiであるduwa.ioを発見しました。開発プロセスをさらに簡素化するために、Composerを使用してDuwa.ioのPHPライブラリ-CaptainDoe/Duwaをインストールおよび管理することにしました。

Laravelアプリケーションを開発するとき、私は一般的ではあるが難しい問題に遭遇しました。ユーザーアカウントのセキュリティを改善する方法です。サイバー攻撃の複雑さの増加により、単一のパスワード保護は、ユーザーのデータのセキュリティを確保するのに十分ではなくなりました。いくつかの方法を試しましたが、結果は満足のいくものではありませんでした。最後に、コンポーザーを介してwiebenieuwenhuis/laravel-2FAライブラリをインストールし、アプリケーションに2因子認証(2FA)を大幅に追加し、セキュリティを大幅に改善しました。
