Laravelで指定した列を返す方法

王林
リリース: 2023-05-20 19:39:07
オリジナル
832 人が閲覧しました

Laravel は、Web 開発者が効率的な Web アプリケーションを簡単に構築できるようにする人気の PHP フレームワークです。 Laravel では、指定された列を返すことは非常に一般的な要件です。この記事では、Laravelが指定された列を返す方法を紹介します。

Laravel では、指定した列を返したい場合、Eloquent モデルを使用できます。 Eloquent は Laravel の ORM (オブジェクト リレーショナル マッピング) フレームワークで、データベースを管理するためのシンプルかつエレガントな方法を提供します。 Eloquent モデルを使用して指定された列を返す方法の手順は次のとおりです。

ステップ 1: Eloquent モデルを定義する

最初に、Eloquent モデルを定義する必要があります。 Laravel アプリケーションでは、すべての Eloquent モデルはアプリ ディレクトリの下の Models フォルダーにあります。次のように、artisan コマンド ライン ツールを使用して新しいモデルを作成できます。

php artisan make:model User
ログイン後にコピー

これにより、Models フォルダーに User という名前の Eloquent モデルが作成されます。このモデルでデータベースのテーブルとフィールドを定義できます。

ステップ 2: データベース フィールドを定義する

次に、Eloquent モデルでデータベース テーブルとフィールドを定義する必要があります。 User モデルでデータベース テーブルとフィールドを次のように定義できます。

namespace AppModels;

use IlluminateDatabaseEloquentFactoriesHasFactory;
use IlluminateDatabaseEloquentModel;

class User extends Model
{
    use HasFactory;

    protected $table = 'users';

    protected $fillable = [
        'name',
        'email',
        'password',
    ];
}
ログイン後にコピー

上記のコードでは、$table 属性と $fillable 属性を使用してデータベース テーブルの名前を定義し、フィールドを定義します。データベースにデータを取り込みます。

ステップ 3: 指定された列を返す

Eloquent モデルとデータベース フィールドを定義したので、あとはコントローラーでデータベース クエリを呼び出し、指定された列を返すだけです。たとえば、ユーザーの電子メール アドレスのみを取得したい場合は、コントローラーで次のコードを呼び出すことで取得できます。

namespace AppHttpControllers;

use AppModelsUser;

class UserController extends Controller
{
    public function index()
    {
        $users = User::select('email')->get();

        return $users;
    }
}
ログイン後にコピー

上記のコードでは、select メソッドを使用して取得するものを選択します。リターンフィールド。この例では、電子メールフィールドのみを選択しました。また、get メソッドを使用して、すべてのユーザーの電子メール アドレスを取得しました。最後に、結果をビューまたは API に JSON 形式で返します。

select メソッドの使用に加えて、以下に示すように、pluck メソッドを使用して特定のフィールドのみを返すこともできます。

$email = User::pluck('email');
ログイン後にコピー

summary

Laravel では、次を使用します。 Eloquent モデル 指定された列を簡単に返すことができます。 select メソッドを使用して返したいフィールドを選択することも、pluck メソッドを使用して特定のフィールドを返すこともできます。これにより、Laravel は大規模なデータテーブルを処理する際の効率が向上し、コードが簡素化されます。

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

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