Composer によるクイック スタート
Composer とは
Composer は、PHP の依存関係管理ツールです。プロジェクト内で依存するライブラリを宣言すると、Composer が次の問題の解決に役立ちます。これらのライブラリのインストール可能なバージョンと、これらのライブラリが依存するライブラリを見つけてインストールします。つまり、Composer は依存関係管理ツールであり、パッケージ管理ツール (Yum や Apt と同様) ではありません。これは、これらのパッケージをプロジェクトごとに管理し、これらのパッケージをプロジェクト内の特定のディレクトリにインストールするためです。
Composer のインストール
Composer には PHP 5.3.2 以降のバージョンと一部の PHP 構成が必要です。互換性がない場合は、インストール プロセス中にプロンプトが表示されます。 Composer をインストールするには 2 つの方法があります。1 つはローカル インストール、もう 1 つはグローバル インストールです。
ローカル インストール
ローカル インストールでは、Composer が現在のディレクトリにインストールされます。次のコマンドを実行してインストールします:
$ php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"$ php -r "if (hash_file('SHA384', 'composer-setup.php') === '070854512ef404f16bac87071a6db9fd9721da1684cd4589b1196c3faf71b9a2682e2311b36a5079825e155ac7ce150d') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"$ php composer-setup.php$ php -r "unlink('composer-setup.php');"
合計 4 つのコマンドがあり、それぞれ次の操作を実行します:
-
インストール ファイルを現在のディレクトリにダウンロードします。
-
インストール ファイルの SHA-384 ハッシュを確認します。
-
インストール ファイルを実行します。
-
インストールファイルを削除します。
次に、次のコマンドを実行して Compoer を実行できます:
$ php composer.phar
2 番目のステップではファイルのハッシュがチェックされることに注意してください。インストール ファイルのハッシュ値はバージョンごとに異なるため、ダウンロード ページにアクセスして各インストールのインストール コードを入手することをお勧めします。または、インストールファイルを確認する必要がないと思われる場合は、このコマンドをスキップして次のコマンドを実行できます。もちろん、セキュリティの観点から、これはお勧めできません。
グローバル インストール
いわゆるグローバル インストールとは、実際には、どこからでも Composer にアクセスできるように、PATH 変数内のディレクトリに Composer をインストールすることを意味します。個人的にはこれを行うことをお勧めします。ローカルにインストールされた Composer 実行可能ファイルをグローバル ディレクトリに移動するだけです:
$ mv composer.phar /usr/local/bin/composer
これにより、composer コマンドをどこでも直接実行できるようになります。特に指定しない限り、後続のコマンドはグローバル インストールで実行されます。
インストール オプション
Composer はインストール時に 3 つのオプションをサポートします。
--install-dir
Composer のインストール パスは、--install-dir オプションを使用して変更できます。たとえば、Composer を bin ディレクトリにインストールする場合は、次のようにします。 >
$ php composer-setup.php --install-dir=bin
--filename オプションを使用すると、Composer 実行ファイルの名前を変更できます (デフォルトは、composer.phar)。例:
$ php composer-setup.php --filename=composer
Composer の特定のバージョンをインストールする場合は、--version オプションを使用できます:
$ php composer-setup.php --version=1.0.0-alpha8
上記のインストール方法以外に、実行ファイルを直接ダウンロードすることもできます。ダウンロードページにアクセスしてダウンロードしてください。
Composer の更新
Composer の更新は非常に簡単で、次のコマンドを実行するだけです:
$ composer selfupdateUpdating to version 1.1.2 (stable channel). Downloading: 100% Use composer self-update --rollback to return to version 06c45623d76457562cecbcf2245f904aa0f63a87# 或者(两者是等效的)$ composer self-update
$ composer selfupdate --rollbackRolling back to version 2016-05-26_16-11-16-06c4562.
composer.json ファイル
Composer をインストールした後、プロジェクトで Composer の使用を開始したい場合は、これだけで済みます。必要なのは、composer .json ファイルを作成することです。このファイルには、プロジェクトが依存するパッケージとその他のメタ情報が記述されています。
require key
require 構成項目を通じて、プロジェクトの依存関係を指定できます。プロジェクトで monolog/monolog ログ ライブラリを使用する必要があると仮定すると、composer.json ファイルを次のように構成できます。
{ "require": { "monolog/monolog": "1.0.*" }}
パッケージの名前
パッケージ名はベンダー名とプロジェクト名で構成され、パッケージ名の一意性が保証されます。プロジェクト名は繰り返すことができますが、ベンダー名は人によって異なります。 monolog/monolog を例に挙げると、ベンダー名とプロジェクト名は両方とも monolog です。
パッケージ バージョン
上記の例では、monolog/monolog バージョンが 1.0.* である必要があります。これは、1.0 開発ブランチ バージョンが要件を満たしていることを意味します。バージョンを指定するにはさまざまな方法がありますが、これについては後続の記事で詳しく説明します。
依存関係をインストールします
composer.json ファイルを作成し、require を構成した後、次のコマンドを実行するだけで依存関係をインストールできます:
$ composer installLoading composer repositories with package informationUpdating dependencies (including require-dev) - Installing monolog/monolog (1.0.2) Downloading: 100% Writing lock fileGenerating autoload files
composer.lock文件
运行完上面的 install命令后,你会发现除了 vendor目录,还会多了一个 composer.lock文件。这个文件保存了项目已经安装的每个包的具体版本。在运行 install命令的时候,如果存在这个文件,则Composer会根据这个文件下载对应版本的包。这样的好处是可以保证各个环境的依赖的版本一致,否则如果没有这个文件,每个环境在运行 install时可能下载到的版本就不一致了。所以建议把 composer.lock文件也放到版本控制里。
更新依赖
要更新依赖,只需要运行 update命令:
# 更新所有的依赖$ composer update# 更新某个依赖$ composer update monolog/monolog
自动加载
下载完依赖后,我们可以开始使用依赖所提供的库了。Composer会为下载的库创建自动加载文件 vendor/autoload.php,我们只需要包含这个文件就能轻松的调用各个库的功能。以 monolog/monolog为例:
$log = new Monolog\Logger('name');$log->pushHandler(new Monolog\Handler\StreamHandler('app.log', Monolog\Logger::WARNING));$log->addWarning('Foo');
我们不用关心库文件的加载问题,Composer的 autoload.php文件已经帮我们处理好了各个库的自动加载。
Packagist 镜像
至此,我们安装好了Composer,也知道了它的基本用法,基本可以快乐的玩耍了。但是众所周知,由于某些原因,github和packagist在国内有时会访问不了,或者速度很慢,这就会导致使用Composer时的各种不爽。还好我们国内有个 镜像可以解决这个问题,只需要把仓库的路径修改为镜像的路径即可。
有两种方式,一是修改Composer的全局配置(推荐的方式):
$ composer config -g repo.packagist composer https://packagist.phpcomposer.com
这个命令会修改Composer的全局配置文件 config.json。二是修改单个项目的配置:
$ composer config repo.packagist composer https://packagist.phpcomposer.com
这个命令会修改项目下的 composer.json文件,添加如下的配置信息:
"repositories": { "packagist": { "type": "composer", "url": "https://packagist.phpcomposer.com" }}
当然你也可以直接手动修改 composer.json文件,添加上面那段配置信息。
详情请访问: http://pkg.phpcomposer.com/。
参考
-
https://getcomposer.org/
-
http://pkg.phpcomposer.com/

ホット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)

ホットトピック











セッションハイジャックは、次の手順で達成できます。1。セッションIDを取得します。2。セッションIDを使用します。3。セッションをアクティブに保ちます。 PHPでのセッションハイジャックを防ぐための方法には次のものが含まれます。1。セッション_regenerate_id()関数を使用して、セッションIDを再生します。2。データベースを介してストアセッションデータを3。

JWTは、JSONに基づくオープン標準であり、主にアイデンティティ認証と情報交換のために、当事者間で情報を安全に送信するために使用されます。 1。JWTは、ヘッダー、ペイロード、署名の3つの部分で構成されています。 2。JWTの実用的な原則には、JWTの生成、JWTの検証、ペイロードの解析という3つのステップが含まれます。 3. PHPでの認証にJWTを使用する場合、JWTを生成および検証でき、ユーザーの役割と許可情報を高度な使用に含めることができます。 4.一般的なエラーには、署名検証障害、トークンの有効期限、およびペイロードが大きくなります。デバッグスキルには、デバッグツールの使用とロギングが含まれます。 5.パフォーマンスの最適化とベストプラクティスには、適切な署名アルゴリズムの使用、有効期間を合理的に設定することが含まれます。

phpstormでCLIモードをデバッグする方法は? PHPStormで開発するときは、PHPをコマンドラインインターフェイス(CLI)モードでデバッグする必要がある場合があります。

PHP開発における固体原理の適用には、次のものが含まれます。1。単一責任原則(SRP):各クラスは1つの機能のみを担当します。 2。オープンおよびクローズ原理(OCP):変更は、変更ではなく拡張によって達成されます。 3。Lischの代替原則(LSP):サブクラスは、プログラムの精度に影響を与えることなく、基本クラスを置き換えることができます。 4。インターフェイス分離原理(ISP):依存関係や未使用の方法を避けるために、細粒インターフェイスを使用します。 5。依存関係の反転原理(DIP):高レベルのモジュールと低レベルのモジュールは抽象化に依存し、依存関係噴射を通じて実装されます。

システムが再起動した後、UnixSocketの権限を自動的に設定する方法。システムが再起動するたびに、UnixSocketの許可を変更するために次のコマンドを実行する必要があります:sudo ...

静的結合(静的::) PHPで後期静的結合(LSB)を実装し、クラスを定義するのではなく、静的コンテキストで呼び出しクラスを参照できるようにします。 1)解析プロセスは実行時に実行されます。2)継承関係のコールクラスを検索します。3)パフォーマンスオーバーヘッドをもたらす可能性があります。

PHP開発でPHPのCurlライブラリを使用してJSONデータを送信すると、外部APIと対話する必要があることがよくあります。一般的な方法の1つは、Curlライブラリを使用して投稿を送信することです。
