ホームページ  >  記事  >  PHPフレームワーク  >  thinkphp5でIDを渡す方法

thinkphp5でIDを渡す方法

PHPz
PHPzオリジナル
2023-04-17 10:28:53579ブラウズ

ThinkPHP 5 は、柔軟なプログラミングと優れたパフォーマンスを提供する人気の PHP フレームワークです。このフレームワークを使用してプロジェクトを開発する場合、多くの場合、ID パラメーターを取得して渡す必要があります。この記事では、ThinkPHP 5 で ID を渡す方法を紹介します。

ThinkPHP 5 では、ID を取得する方法が多数あります。通常、ルーティング設定ファイル内のプレースホルダーを使用して ID を取得できます。たとえば、次のようにルートを定義します。

Route::get('user/:id','user/read');

上記のルートでは、:id はプレースホルダーであり、id という名前のパラメーターを取得することを示します。この時点で、user モジュールの read メソッドの request() 関数を使用して ID パラメーターを取得できます。コードは次のとおりです。上記の

public function read($id)
{
    echo 'User ID: '.$id;
}

コードでは、$id パラメーターは、プレースホルダー :id を介して渡される ID 値です。 read メソッドで値を操作または出力できます。

プレースホルダーを使用してルーティングで ID 値を取得するだけでなく、request() 関数のパラメーターを通じてコン​​トローラーで ID 値を取得することもできます。たとえば、User モジュールの下に InformationController コントローラがあり、edit メソッドがあると仮定します。

$request

パラメータは現在のリクエストの情報を取得するために使用され、id という名前のパラメータ値は param() を通じて取得されます。方法。このときに渡されるパラメータは、URL のクエリ文字列形式で渡す必要があります。例: <pre class="brush:php;toolbar:false">public function edit(Request $request) {     $id = $request-&gt;param('id');     echo 'Information ID: '.$id; }</pre> 上記の URL では、

id

パラメータの値は です。 1、つまり edit メソッドに渡される ID 値です。 ルート内でプレースホルダーとクエリ文字列を使用して ID 値を渡すだけでなく、より高度な方法を使用してコード内で ID 値を取得することもできます。たとえば、次のように、ルート内のデフォルト値を使用して ID 値を取得できます。

http://example.com/index.php/user/information/edit?id=1

上記のコードでは、括弧を使用して

:id

[: id]、ID のデフォルト値は ['id' => '\d '] で数値として指定されます。この時点で、URL に ID 値が指定されていない場合は、デフォルト値が使用されます。例: <pre class="brush:php;toolbar:false">Route::get('user/[:id]','user/read', ['id' =&gt; '\d+']);</pre> 上記の URL では ID 値は渡されませんが、デフォルト値が使用されるため、

$id

変数の値は 0# になります。 ##。デフォルト値メソッドを使用して、コントローラーまたはモデルの ID 値を取得することもできます。 要約すると、ThinkPHP 5 では ID 値を取得して渡す方法は数多くあります。必要に応じて、さまざまな方法を選択して ID 値を取得して渡し、コード内で処理して使用できます。実際の開発では、より柔軟なプログラミングやアプリケーションを実現するために、状況に応じてさまざまな方法を選択する必要があります。

以上がthinkphp5でIDを渡す方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。