質問編集履歴

1

2015/02/13 03:06

投稿

takuya_126
takuya_126

スコア18

test CHANGED
File without changes
test CHANGED
@@ -1,47 +1,22 @@
1
1
  PHPを使用していて、オブジェクトの配列でforeach文にリファレンス渡しを使うと、おかしなことになって困っています。
2
-
3
-
4
2
 
5
3
  メタデータオブジェクトなので、プロパティが多くあります。
6
4
 
7
-
8
-
9
5
  $objects[]は、下記のようにプロパティを持つアイテムです。
10
6
 
11
-
12
-
13
- **objects->item1, object->item2....**
7
+ objects->item1, object->item2....
14
-
15
-
16
8
 
17
9
  これらのオブジェクトに追加して、次のようなコードを使って、htmlでリスト表示したいと思っています。
18
10
 
19
-
20
-
21
- ```lang-<ここに言語を入力>
22
-
23
11
  foreach ($objects as &$obj) {
24
-
25
- $obj->newItem=(hogehoge);
12
+ $obj->newItem=(hogehoge);
26
-
27
13
  }
28
14
 
29
-
30
-
31
15
  foreach ($objects as $obj) {
32
-
33
- <li><?php ここに表示 ?></li>
16
+ <li><?php ここに表示 ?></li>
34
-
35
17
  }
36
-
37
- ```
38
-
39
-
40
18
 
41
19
  しかし、最後のオブジェクトは削除され、二番目から最後までのオブジェクトは2回表示されてしまいます。
42
20
 
43
-
44
-
45
21
  なぜでしょうか??
46
-
47
22
  誰か説明してくれませんか?