私は.csv
というファイルを使ってダウンロード可能なファイルを作成していました。私はfirst_name
でアルファベット順にデータを並べ替える必要がありますので、asort('$user->first_name');
を使ってみましたが、エラーに終わりました。私はおそらく皆さんが私を助けることができる全体のコードを表示します。phpを使ってcsv列のデータ配列をソートする方法は?
public function getTransportationReport()
{
header...
$file = fopen('php://output', 'w');
fputcsv($file, array('Departure Location', 'First Name', 'Last Name', 'Group Name', 'Unit', 'Unit Number', 'Phone Number', 'Email Address'));
$rowed = array();
$auth_event = \App\Group::find(session()->get('event-id'));
$bookings = \App\EventBookings::where('group_id', '=', $auth_event->group_id)->where('chalet_id', '!=', 0)->get();
if ($bookings->count()) {
foreach ($bookings as $booking) {
$event_group = \App\EventGroup::find($booking->eg_id);
if ($event_group) {
$chalet = \App\Chalet::find($booking->chalet_id);
if ($chalet) {
$transpoCharges = \App\EventBookingCharges::where('booking_id', '=', $booking->booking_id)->where('charge_key', 'LIKE', 'transportation')->get();
if ($transpoCharges->count()) {
foreach ($transpoCharges as $transpoCharge) {
$jdecode = json_decode($transpoCharge->json);
$user = \App\User::find($transpoCharge->user_id);
$paidCharges = \App\EventBookingCharges::where('booking_id', '=', $booking->booking_id)->where('status','=',1)->where('user_id','=',$user->user_id)->sum('amount');
if ($user) {
$rowed[] = array(
$jdecode->location,
$user->first_name,
$user->last_name,
$event_group->name,
$chalet->name,
$chalet->unit_no,
$user->phone,
$user->email,
);
}
}
}
}
}
}
$data = $rowed;
foreach ($data as $row) {
fputcsv($file, $row);
}
}
exit();
if (Auth::user()->user_level == 2) {
return Redirect::to($auth_event->alias . '/app/etranspo');
} else {
return Redirect::to('/app/' . $auth_event->alias . '/etranspo');
}
}
私はボタンをクリックした場合にのみfile not found
表示されますが、私は右のボタンをクリックしてsave as
を選択した場合には、エラーがerror ReportsController.php line 490
[ラインASORT(する$ user-> FIRST_NAMEを)言って.csv
ファイルをダウンロードします。である]とIndirect modification of overloaded property App\User::$first_name has no effect
エラーログを表示してください。 – Flummox
@Flummox 'errors ReportsController.php line 490' [asort($ user-> first_name);という行です。 ]と 'オーバーロードされたプロパティの間接的変更App \ User :: $ first_nameは何の効果もありません ' – Newbie
あなたの質問に追加してください。 – Flummox