0

Laravelの内部クエリを使用してデータを取得しようとしましたが、値変数を値として渡すという問題に直面しています。クエリは次のとおりです。

    $seller_name = $request->seller_name;
    $supplier_address = DB::table('supplier_addresses')
        ->where('company_main_name', function($query)
        {
            $query->select('company_main_name')
                ->where('company_name',$seller_name)
                ->from('supplier_addresses')
                ->get();
        })
        ->get();

代わりに静的な値を渡すと$seller_name、完全に機能します。null$seller_nameではないことを確認しました。エラー変数が定義されていないことを示しています。

4

6 に答える 6

2

これを試してください。 $variable after 関数を次useのように渡す必要があります

$seller_name = $request->seller_name;
$supplier_address = DB::table('supplier_addresses')
        ->where('company_main_name', function($query ) use($seller_name)
        {
            $query->select('company_main_name')
                ->where('company_name',$seller_name)
                ->from('supplier_addresses')
                ->get();
        })
        ->get();
于 2017-05-26T06:37:30.817 に答える