回答編集履歴

1

説明を追記

2019/12/06 04:53

投稿

tacsheaven
tacsheaven

スコア13703

test CHANGED
@@ -1,6 +1,6 @@
1
1
  clone ではなく、$sheet->copy() を使ってみてください。
2
2
 
3
- PHPSpreadsheet のリファレンスでも
3
+ [PHPSpreadsheet のリファレンス](https://phpoffice.github.io/PhpSpreadsheet/master/PhpOffice/PhpSpreadsheet/Spreadsheet.html#method_copy)でも
4
4
 
5
5
 
6
6
 
@@ -11,3 +11,15 @@
11
11
 
12
12
 
13
13
  と書いてあるように clone とは挙動が異なります。
14
+
15
+
16
+
17
+ 本来 clone(により呼び出される __clone)は、
18
+
19
+ >
20
+
21
+ Implement PHP __clone to create a deep clone, not just a shallow copy.
22
+
23
+
24
+
25
+ とあるように、shallow copy ではなく deep copy を返すように組まれているようなのですが、正しく動作していない感じです。確実に deep copy を返している copy() を使った方が確実です。