ホームページ > バックエンド開発 > PHPチュートリアル > シンフォニーからこんにちは

シンフォニーからこんにちは

Linda Hamilton
リリース: 2025-01-03 06:13:43
オリジナル
835 人が閲覧しました

Symfony プロジェクトを作成する

まず、Symfony CLI を使用して新しい Symfony アプリケーションを作成しましょう。ターミナルを開いて次を実行します:

symfony new poc-symfony
ログイン後にコピー
ログイン後にコピー

ここでのプロジェクト名 poc-symfony は重要ではありません。プロジェクト名として任意のものを選択できます。

ここでは Symfony CLI を使用して新しい Symfony アプリケーションを作成しています。

これを使用したくない場合は、代わりに有名な Composer ツールを使用してアプリケーションを作成できます。

composer create-project symfony/skeleton poc-symfony 
ログイン後にコピー
ログイン後にコピー

Composer を使用して Symfony アプリケーションを作成する方法について詳しくは、このドキュメントをお読みください。

統合された Symfony サーバーを起動します:

symfony serve -d
ログイン後にコピー

-d オプションは、サーバーをバックグラウンドでデーモンとして実行するために使用されます。これを停止するには、次のコマンドを実行します:

symfony server:stop
ログイン後にコピー

Symfony CLI をインストールしていない場合は、次のコマンドを実行して組み込みの PHP Web サーバーを使用できます。

php -S localhost:8000 -t public/
ログイン後にコピー

デフォルトでは、使用されるポートは 8000 です。指定された URL (デフォルトでは https://localhost:8000) にあるお気に入りのブラウザでアプリケーションを開きます。

ブラウザには次のようなものが表示されます:

Hello from Symfony

ここでの目標: 最初の Symfony コントローラーを作成し、Twig で最初のテンプレートをレンダリングして、Symfony から Hello を表示する!

まず、次のコマンドを実行して twig パッケージをインストールします。

composer require twig
ログイン後にコピー

Symfony Flex のおかげで、いくつかのファイルがプロジェクトに追加されました。

最初の Symfony コントローラーとなる最初の PHP ファイルを作成します。次の内容を含む HomeController.php という名前の新しいファイルを作成します (src/Controller ディレクトリ内に、任意の名前を付けることができます)。

<?php

declare(strict_types=1);

namespace App\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\HttpFoundation\Response;
use Symfony\Component\Routing\Attribute\Route;

final class HomeController extends AbstractController
{
    #[Route('/', name: 'home')]
    public function home(): Response
    {
        return $this->render('home/index.html.twig');
    }
}
ログイン後にコピー

ここでは特別なことは何もありません。HomeController は Symfony AbstractController を拡張し、そこからの render メソッドを使用して HTTPFoundation コンポーネントからの応答を返します。

home という名前の / パターンに一致するルートがあります。関連するメソッドも home という名前で、小枝テンプレートを返します。

小枝テンプレートのコンテンツには次の内容が含まれます:

{% extends 'base.html.twig' %}

{% block body %}
    <h1>Hello from Symfony!?</h1>
{% endblock %}
ログイン後にコピー

base.html.twig ファイルを拡張し、body ブロックのコンテンツをカスタマイズするだけです。
ページを更新して完成です?

Hello from Symfony

おめでとうございます。成功しましたか?

アプリケーションをテストする

テスト時間 ?️
アプリケーションをテストしてみましょう。

アプリケーションをテストしないのですか?テストを追加するには優秀すぎますか?

任意ですが、すべてが期待どおりに動作することを確認するために、いくつか追加することを好みます。

次のコマンドを実行して、テスト用の新しいパックを追加しましょう:

composer require --dev symfony/test-pack
ログイン後にコピー

繰り返しになりますが、Symfony Flex のおかげで、さらにいくつかのファイルがデフォルト設定で動作するようにインストールされています。

テスト用の PHP ファイルを作成します。このファイルを HomeControllerTest という名前にしました (tests/Controller ディレクトリ内):

symfony new poc-symfony
ログイン後にコピー
ログイン後にコピー

この簡単なテストは、アプリケーションですべてが機能することを確認するのに役立ちます。

テストを実行します:

composer create-project symfony/skeleton poc-symfony 
ログイン後にコピー
ログイン後にコピー

Hello from Symfony

おめでとうございます、テストに合格しました、すごいですね?

以上がシンフォニーからこんにちはの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:dev.to
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート