teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

説明文で一部ごっちゃになってたので修正

2020/06/08 04:54

投稿

rururu3
rururu3

スコア5545

answer CHANGED
@@ -1,6 +1,6 @@
1
1
  > ループ内で$messagesをLog::debug($messages)で確認すると、ログインしているユーザーがやりとりしている掲示板のデータに紐づくメッセージを全て取得できたのですが、ループの外でview側へ$messagesをreturnするとループの最後の掲示板メッセージしかreturnされません。(foreachから出るとポインタは最後の要素のみを指し示すためだと思います)
2
2
 
3
- foreachのループ内でreturn viewしてるので当然そうなる…&`$messages`毎回上書きしてるのだから当然最後にデータになる
3
+ `$messages`毎回上書きしてるのだから当然最後にデータになる
4
4
 
5
5
  > なので、foreach内で$messagesをreturnしようと下記のコードを試すと、最初の掲示板メッセージしか取得できませんでした(最初のループでreturnしているためだと思います)
6
6
 
@@ -13,9 +13,8 @@
13
13
  'products',
14
14
  ));
15
15
  ```
16
+ foreachのループ内でreturn viewしてるので当然そうなる……原因わかっててここまでソース記載できるのでしたら解決できそうな気もしますが、
16
17
 
17
- 間違いなくそうですね…原因わかっててここまでソース記載できるのでしたら解決できそうな気もしますが、
18
-
19
18
  ```php
20
19
  $messages = [];
21
20
  foreach ($bulletinBoards as $bulletinBoard) {