?
Esprichoは、Modular Systemサポートが組み込まれたSymfonyコンポーネントに基づいた、PHP7の軽量化フレームワークです。
Esprichoは、LaravelとYii2から大きなインスピレーションを受けています。そのモジュール性はYii2に似ていますが、Symfony DIコンテナのおかげで、Laravelのような強力なコンテナがあります!エスプリチョは、ペルシャのスワロー鳥の名前です(カーマニ方言)。
mafsho 、Esprichoでより簡単に機能するために、ジェネレーターのような多くの機能を提供するコマンドラインツールです。それはファルシの言葉を意味しますバッグ(カーマニ方言)。 php mafshoコマンドで実行できます。
エスプリチョには次のような構造があります。
├── Bootstrap
├── Components
├── Configs
├── Console
├── Controllers
├── Databases
├── mafsho
├── Models
├── Modules
├── Public
└── Runtime
それぞれについて続けます。
Esprichoは、環境変数(実行中の環境に依存する変数)の定義をサポートしています。それらを.env (または.env.dist distアプリケーション段階である)ファイルを装着する必要があります。 .envファイルのすべてのキーが上品になり、セクション名から始める場合、それは良い考えです。たとえば、すべてのElasticSearchキーは、 ELASTICSEARCH_プレフィックスから始まります。
反対側では、 Config/*.yamlファイルでアプリケーションレベルの構成を定義できます。最後に、この構成の両方はsys()->getConfig('dot.notationed.key', 'default')からアクセスできます。
sys.yamlファイルで、システムのブートパラメーターを設定できます。主な結果として、 loaderキーの下にシステムモジュールローダーを定義できます。
sys :
name : Espricho
version : 1.0
max_log_files : 10
loader :
- auth
- db
- modules
- redis
- elasticsearchデータベース構成は、プロジェクトのルートを.envに設定する必要があります。そのコンテンツのサンプルはこれに似ています。
# Database Configurations
DB_DRIVER = mysql
DB_HOST = localhost
DB_PORT = 3306
DB_USERNAME = root
DB_PASSWORD = root
DB_DATABASE = db_name モジュールを定義するには、モジュールをModulesフォルダーの下に配置し、その構造を定義する必要があります。サンプル構造は次のようなものです。
Modules
└── Shop
├── Configs
│ └── routes.yaml
└── Controllers
└── ProductController.php
各モジュールには独自のルート定義ルールがあり、 Configsカテゴリの下のroutes.yamlファイルで定義する必要があります。モジュールの定義の後、プロジェクトのルートのConfigsフォルダーのmodules.yamlに登録できます。この構成ファイルのサンプルコンテンツは次のとおりです。
modules :
shop :
folder : Shop
route_prefix : sh各モジュールはサブモジュールを持つことができ、モジュールディレクトリのConfigsフォルダーのmodules.yamlファイルで定義する必要があります。ルートの定義は似ています。