Weave Code
Code Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Deep Copy Laravel Package

myclabs/deep-copy

DeepCopy creates safe deep clones of PHP objects, recursively copying referenced objects while preserving the original object graph. It handles cyclic references to avoid infinite loops, and supports customization via matchers and filters for specific properties and types.

View on GitHub
Deep Wiki
Context7
1.13.4

What's Changed

New Contributors

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.13.3...1.13.4

1.13.2

What's Changed

New Contributors

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.13.1...1.13.2

1.13.1

What's Changed

New Contributors

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.13.0...1.13.1

1.13.0

What's Changed

New Contributors

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.12.1...1.13.0

1.12.1

What's Changed

New Contributors

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.12.0...1.12.1

1.12.0
1.11.1

What's Changed

Full Changelog: https://github.com/myclabs/DeepCopy/compare/1.11.0...1.11.1

1.10.2

#161 Add isInitialized check on PropertyTypeMatcher for PHP 7.4

1.10.1

Bugfixes

  • Fix copying objects extending ArrayObject (#152) (#155)
1.10.0

Features

  • Allow PHP 8 (#157)

Misc

  • Exclude docs from being exported #151
1.9.5

Bugfixes

  • Fix deep copying of ArrayObject in PHP 7.4 (#145)
1.9.4

#143, #144: Add support for PHP 7.4's typed properties (they can be in an "uninitialized" state), by @SlvrEagle23

1.9.3

Misc

  • Backport changes to gitattributes (#136)
1.9.2

Misc

  • Backport changes to gitattributes (#136)
1.9.1

Bugfixes

  • Fix the branch pointed; 1.9.0 was incorrectly targetting the 2.x branch instead of 1.x
1.9.0

Features

  • Add filter prepend method (#132)
1.8.1

Bugfixes

  • Declare deep_copy only once (#120)
1.8.0

Misc

  • Bump dependencies and update Travis configuration (#96)
1.7.0

Features

  • Add function shortcut (#82)

Bugfixes

  • Fix copying of DateTimeZone objects (#86)
  • Fix access to parent properties in matchers (#88)
  • Fix copying of DateInterval objects (#87)

Deprecations

  • Make the API final (#81)

Other notable changes

  • Update of the configuration (#80)
  • Update documentation, code cleaning, rework tests, add missing tests (#83, #85, #89, #90)
1.6.1
  • #61 #64 Un-deprecated PropertyTypeMatcher
1.6.0
  • @malc0mn implemented #18 in #59: new filter for handling Doctrine Proxies \o/
1.5.5
  • #49 Properly clone elements in SplDoublyLinkedList
  • #51 Remove usage of array_merge
1.5.4

#50 Revert change that caused a BC break + add test

1.5.3
  • #46 New option to use native clone behavior, i.e. call __clone(), when that method exists
  • #44 and #45: performance improvements
  • #48: documentation improvements
1.5.2

Fix #38 (in #43 and #42): "Notice: Undefined property: DateTime::$date"

1.5.1
  • Bugfix: #29
  • Documentation udpate: #32
1.5.0

You can now add "type matchers" that will apply to any object that matches a type. The object doesn't have to be in a property directly, it can be in an array for example.

Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
davejamesmiller/laravel-breadcrumbs
artisanry/parsedown
christhompsontldr/phpsdk
enqueue/dsn
bunny/bunny
enqueue/test
enqueue/null
enqueue/amqp-tools
bower-asset/punycode
bower-asset/inputmask
bower-asset/jquery
bower-asset/yii2-pjax
laravel/nova
spatie/laravel-mailcoach
spatie/laravel-superseeder
laravel/liferaft
nst/json-test-suite
danielmiessler/sec-lists
jackalope/jackalope-transport
twbs/bootstrap4