0

オブジェクトを Laravel Excel シート メソッドに渡そうとしていますが、方法がわかりません。未定義の変数エラーが発生します。これは、オブジェクトに到達するスコープを持たない関数内にいるためです。

最終的に、あるテーブルから regtypes を読み込み、別のテーブルから出席者を読み込み、そのタイプのすべての出席者を含む各 regtype のシートを作成します。

私のコード:

public function export() 
{
    $date = date('Y_m_d');
    \Excel::create('CMO_Connect_Attendees_Export_'.$date, function($excel) {
    $regtypes = Regtype::all();
    foreach ($regtypes as $regtype) {
        if( $regtype->attendees(3)->count() ) {

        $excel->sheet('Attendees', function($sheet) {
            $date = date('Y_m_d');
            $attendees = new Attendee;

            $atts = Attendee::where('block_id', '=', \Input::get('block_id'))
                ->where('regtype_id', '=', $regtype->id)
                ->get();
                $sheet->setStyle(array(
                    'font' => array(
                        'name'      =>  'Arial',
                        'size'      =>  12,
                        'bold'      =>  false
                    )
                ));
            $sheet->loadView('attendees.export', array('atts' => $atts))->with('curdate',$date)->with('regtype_name',$regtype->name);

        });
        } //endif
    } //endforeach

    $excel->export('xls');
    });
}
4

1 に答える 1

0

私がこれを書いているとき、私はそれを理解しました。これは単にLaravel Facadeのメソッドであるため、非常に簡単に知っておくべきだったので、次のようにオブジェクトを配列として渡します。

            $excel->sheet('Attendees',  array('regtype' => $regtype), function($sheet) {
于 2014-10-22T23:09:05.623 に答える