悩んでること、内容
ソースを読んでもどのような処理をしているか理解できないため、教えて欲しいです。
変数にsessionを使った処理を代入しています。
sessionで変数にデフォルト値を指定しました。(ここもあっているか不安です。)
その後にforeachで配列にsessionが入っている変数を下記ソースのように指定しました。
これはどのような処理をしているのでしょうか?
該当のソースコード
php
1$id = $request->input('deletecheck', ''); //deletecheck=チェックボックスにチェックを入れたときに、値に対応するsqlに保存されているid番号 2$sql = ''; 3$user = session('user', array()); //'user'にarray()を入れてデフォルト値にする。 4$del_data = array(); 5$sql = 'update bangumi_mst set delete_flg = 1, ' 6 . 'modified_by = ?, modified = GETDATE() where id = ?'; //modified_by=修正者、modified=修正日 7 8foreach ($id as $key => $val) { 9 $del_data = array( 10 $user['name'], //ここが理解できません。nameというのはログインユーザみたいなものです。 11 $val, 12 ); 13 if (DB::update($sql, $del_data) != 1) { 14 throw new Exception('update error'); 15 } 16}
私なりに考えた解釈
$user=修正者($sqlに入っている「modified_by = ?」の?に該当する。)上で$userにはデフォルト値でarray()が設定されているので$userには配列が入る。なので['name']を指定しているということは、渡ってきたログインユーザの値が入る。
と、投げやりな感じで考えたのでなんだかすっきりしません。
いろいろ調べたのですが答えが見つからなかったので教えてください。
回答3件
あなたの回答
tips
プレビュー