コアポイント
- Symfony Consoleは、データの移行、インポート、CRONジョブの作成などの繰り返しタスクに役立つコマンドラインツールを作成するための簡単なフレームワークを提供するスタンドアロンパッケージです。
- 新しいコマンドを作成するには、ファイルを実行可能にする必要があります。これは、プロジェクトルートディレクトリにコンソールファイルを作成し、ファイルが実行可能であることを確認し、コンソールアプリケーションを定義することで実行できます。
- SymfonyのCommandTesterクラスを使用してコマンドをテストできます。コマンドは、コマンドラインなしでコマンドをテストするための特別な入力クラスと出力クラスを提供します。
- Symfonyコンソールは、Composer(PHPの依存関係管理ツール)を使用してインストールされています。コマンドラインコマンドを作成する簡単なAPIを提供し、カラーディスプレイ、進行状況バー、テーブル、および出力のその他のインタラクティブ機能をサポートします。
この記事は2017年5月24日に更新され、この重要なモダンツールのより包括的な紹介を提供します。
「コンソールコンポーネントは、美しくテスト可能なコマンドラインインターフェイスを作成するプロセスを簡素化します これは、Symfony Consoleコンポーネントツールページにアクセスしたときに見られる歓迎メッセージです。
ソフトウェア開発者として、コマンドラインツールを使用する必要があることがよくあります。これらのツールは、何らかの繰り返しタスク(データの移行、輸入の実行、Cronジョブの作成など)を実行する必要がある場合に役立ちます。
Symfony Consoleコンポーネントツールは、独自のコマンドラインツールを作成するための簡単なフレームワークを提供します。
インストール
作曲家に関する重要な情報はここに含まれています。
新しいコマンドを作成します
composer require symfony/console
新しいコマンドを作成するには、ファイルが実行可能であることを確認する必要があります。これを行うには、プロジェクトルートディレクトリにコンソールファイルを作成しましょう。このファイルは、コマンドマネージャーとして機能します。
さあ、ファイルが実行可能であることを確認しましょう。
次に、ファイルの先頭にシバンがあることを確認しましょう。 Shebangは、スクリプトの先頭に表示される一連の文字(親指マークに続く感嘆符が続く)です。 Shebangが存在すると、exec()は、Shebangが実行された後に指定された実行可能ファイルに変更されます。この例では、PHPスクリプトとして実行されます。の後、コンソールアプリケーションを定義しましょう。コマンドマネージャーの最初のイテレーションは次のようになります:
touch console
よく見てみましょう。まず、すべての依存関係を自動的にロードし、コンソールコンポーネントからアプリケーションパッケージをインポートします。その後、アプリケーションの新しいインスタンスを作成して実行します。
chmod 755 console
./console
を使用してスクリプトを実行する場合、次のヘルプメッセージを取得する必要があります。
スクリプトを作成し、新しく作成したコマンドマネージャーに登録しましょう。
この特定の例では、2つの単純なコマンドを実装します。1つは、ハッシュが与えられた文字列に属していることを確認するために、ハッシュする文字列ともう1つは実装します。
次のコンテンツを使用して、hash.phpクラスの
フォルダーを配置します。
/src
コマンドを作成する時が来ました。 hashcommand.phpという新しいPHPファイルを作成しましょう。
composer require symfony/console
で完了したコマンドは次のとおりです
構成セクションでは、setNameメソッドはコマンドを呼び出す方法であり、setDescriptionはコマンドの説明であり、addArgumentはコマンドがパスワードという名前のパラメーターを受け入れることを宣言するステートメントであり、必要です。
実行セクションでは、getArgument関数を介してパラメーターにアクセスし、ハッシュクラスを使用してハッシュします。最後に、outputinterfaceのwriteelnメソッドを使用して、結果を画面に印刷します。
touch consoleこのようにコマンドを実行すると、何も起こらないことがわかります。これは、私たちがまだ非常に重要なステップを逃しているからです。コマンドをコンソールに登録する必要があります。
コンソールにコマンドを登録した後、実行しましょう。
hashは、php hash()メソッドをSitePoint文字列に適用した結果です。 ハッシュ確認関数については、同じ方法を使用しますが、1つではなく2つのパラメーターがあります。 1つは確認する必要がある文字列であり、もう1つは検証したいハッシュ値です。
次に、コンソールにコマンドを登録します。
テストに関しては、Symfonyはいくつかの便利なツールを提供します。最も便利なものは、コマンドテスタークラスです。これは、コマンドラインなしでコマンドをテストするための特別な入力クラスと出力クラスを提供するためです。 CommandTesterクラスを使用して、Hash:Hashコマンドのテストを実装しましょう。 最初に、私たちと同じレベルで に名前を付けてみましょう。
コマンドラインに見られるように、
結論
この記事で書いたすべてのコードは、githubで見つけることができます。
。このコマンドは、Symfony Consoleコンポーネントをプロジェクトにダウンロードしてインストールします。
。 コマンドパラメーターとオプションは、コマンドクラスの構成メソッドで定義できます。 getArgumentおよびgetoptionメソッドを使用して、実行方法のこれらのパラメーターとオプションの値を取得できます。 Symfony Consoleは、出力を表示するいくつかの方法を提供します。 writeelnメソッドを使用してテキストの行を表示し、書き込みメソッドを使用してテキストを表示し(最後に行の破損はありません)、テーブルメソッドを使用してテーブルを表示できます。 エラーは、例外をスローすることで処理できます。 Symfony Consoleはこれらの例外をキャッチし、エラーメッセージを表示します。 Exitメソッドを使用して、コマンドの実行を停止し、Exitコードを返すこともできます。 Symfony Consoleは、コマンドをテストするために使用できるCommandTesterクラスを提供します。このクラスを使用して、特定のパラメーターとオプションを使用してコマンドを実行し、出力と終了コードをアサートできます。 symfonyプロジェクトでは、chmod 755 console
./console
実行しましょう:最終結果が表示されます:
#!/usr/bin/env php
<?php require_once __DIR__ . '/vendor/autoload.php';
use Symfony\Component\Console\Application;
$app = new Application();
$app->run();
<?php
namespace Hash;
class Hash {
/**
* 接收一个字符串密码并对其进行哈希处理。
*
* @param string $password
* @return string $hash
*/
public static function hash($password) {
return password_hash($password, PASSWORD_DEFAULT);
}
/**
* 验证哈希是否与给定的密码相对应
*
* @param string $password
* @param string $hash
* @return boolean 如果哈希是从密码生成的
*/
public static function checkHash($string, $hash) {
if (password_verify($string, $hash)) {
return true;
}
return false;
}
}
テスト
/src
フォルダーを作成しましょう。 /tests
composer require symfony/console
アプリケーションクラスを使用してコマンドを最初にロードします。次に、新しいCommandTesterをインスタンス化します。 CommandTesterを使用して、コマンドを呼び出す方法を構成できます。最後のステップは、getDisplay()メソッドを使用して、実行結果と予想される結果を比較することです。
Symfonyコンソールをインストールする方法は?
Symfonyコンソールは、Composer(PHPの依存管理ツール)を使用してインストールできるSymfonyフレームワークのコンポーネントです。 Symfony Consoleをインストールするには、端末で次のコマンドを実行する必要があります:composer require symfony/console
Symfonyコンソールは、コマンドラインコマンドを作成するための簡単なAPIを提供します。これらのコマンドは、CRONジョブ、移行、輸入、またはコマンドラインを介して実行できるその他のタスクタイプに使用できます。また、カラーディスプレイ、進行状況バー、テーブル、および出力のその他のインタラクティブな機能もサポートしています。
新しいコマンドを作成するには、SymfonyComponentConsoleCommandクラスを拡張する新しいクラスを作成する必要があります。このクラスでは、Configureメソッドのコマンドの名前、説明、パラメーター、およびオプションを定義します。実行メソッドには、コマンドのロジックが含まれます。 スクリプトに続いてコマンドの名前を使用する必要があります。たとえば、
というコマンドがある場合、次のコマンドで実行できます:bin/console
app:my-command
データベースの移行にSymfonyコンソールを使用する方法は? bin/console app:my-command
Symfonyコンソールのコマンドパラメーターとオプションを処理する方法は?
Symfonyコンソールに出力を表示する方法は?
Symfonyコンソールのエラーを処理する方法は?
Symfonyコンソールでコマンドをテストする方法は?
SymfonyプロジェクトでSymfony Consoleを使用する方法は?
bin/console
スクリプトを使用してコマンドを実行できます。また、src/Command
ディレクトリにSymfonyComponentConsoleCommandクラスを拡張する新しいクラスを作成することにより、独自のコマンドを作成することもできます。
以上が再導入Symfony Console -UninitiatedのCLI PHP!の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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

PHPとPythonはどちらも、Web開発、データ処理、自動化タスクで広く使用されている高レベルのプログラミング言語です。 1.PHPは、ダイナミックウェブサイトとコンテンツ管理システムの構築によく使用されますが、PythonはWebフレームワークとデータサイエンスの構築に使用されることがよくあります。 2.PHPはエコーを使用してコンテンツを出力し、Pythonは印刷を使用します。 3.両方ともオブジェクト指向プログラミングをサポートしますが、構文とキーワードは異なります。 4。PHPは弱いタイプの変換をサポートしますが、Pythonはより厳しくなります。 5. PHPパフォーマンスの最適化には、Opcacheおよび非同期プログラミングの使用が含まれますが、PythonはCprofileおよび非同期プログラミングを使用します。

PHPは主に手順プログラミングですが、オブジェクト指向プログラミング(OOP)もサポートしています。 Pythonは、OOP、機能、手続き上のプログラミングなど、さまざまなパラダイムをサポートしています。 PHPはWeb開発に適しており、Pythonはデータ分析や機械学習などのさまざまなアプリケーションに適しています。

PHPは1994年に発信され、Rasmuslerdorfによって開発されました。もともとはウェブサイトの訪問者を追跡するために使用され、サーバー側のスクリプト言語に徐々に進化し、Web開発で広く使用されていました。 Pythonは、1980年代後半にGuidovan Rossumによって開発され、1991年に最初にリリースされました。コードの読みやすさとシンプルさを強調し、科学的コンピューティング、データ分析、その他の分野に適しています。

PHPはWeb開発と迅速なプロトタイピングに適しており、Pythonはデータサイエンスと機械学習に適しています。 1.PHPは、単純な構文と迅速な開発に適した動的なWeb開発に使用されます。 2。Pythonには簡潔な構文があり、複数のフィールドに適しており、強力なライブラリエコシステムがあります。

PHPは、多数のWebサイトとアプリケーションをサポートし、フレームワークを通じて開発ニーズに適応するため、近代化プロセスで依然として重要です。 1.PHP7はパフォーマンスを向上させ、新機能を紹介します。 2。Laravel、Symfony、Codeigniterなどの最新のフレームワークは、開発を簡素化し、コードの品質を向上させます。 3.パフォーマンスの最適化とベストプラクティスは、アプリケーションの効率をさらに改善します。

phphassiblasifly-impactedwebdevevermentandsbeyondit.1)itpowersmajorplatformslikewordpratsandexcelsindatabase interactions.2)php'sadaptableability allowsitale forlargeapplicationsusingframeworkslikelavel.3)

PHPタイプは、コードの品質と読みやすさを向上させるためのプロンプトがあります。 1)スカラータイプのヒント:php7.0であるため、基本データ型は、int、floatなどの関数パラメーターで指定できます。 3)ユニオンタイプのプロンプト:PHP8.0であるため、関数パラメーターまたは戻り値で複数のタイプを指定することができます。 4)Nullable Typeプロンプト:null値を含めることができ、null値を返す可能性のある機能を処理できます。


ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

SublimeText3 英語版
推奨: Win バージョン、コードプロンプトをサポート!

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

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

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

AtomエディタMac版ダウンロード
最も人気のあるオープンソースエディター
