Saya ada soalan menarik tentang padat dalam PHP dan padat dalam Laravel.
Ambil contoh padat ini dalam PHP:
$banana = "yellow"; $apple = "red"; $result = compact('banana','apple'); var_dump($result); //Output array(2) { ["banana"]=> string(6) "yellow" ["apple"]=> string(3) "red" }
Tetapi apabila saya menggunakan paparan pulangan padat pada pengawal dalam Laravel, ia mengembalikan pembolehubah dan bukannya tatasusunan
public function fruisColor($banana="yellow",$apple="red"){ return view('template.fruits',compact('banana','apple')); }
Tetapi apabila saya mendapat pembolehubah ini dalam bilah templat, ia bukan tatasusunan tetapi pembolehubah, lihat:
P1 = {{ $banana }} e P1 = {{ $apple }}
Jika PHP padat menukar pembolehubah kepada tatasusunan, mengapa dalam bilah templat ia hanya mengembalikan var? Ini tidak sepatutnya:
P1 = {{ $banana[0] }} e P1 = {{ $apple[0] }}
Nampak mengelirukan bukan?
Memandangkan dua parameter kaedah paparan menerima tatasusunan, yang menurut dokumentasi menukarnya kepada pembolehubah yang boleh digunakan dalam templat bilah, Laravel boleh mengendalikan tatasusunan yang dikembalikan daripada padat.