Download the PHP package oguzhankrcb/datamigrator without Composer
On this page you can find all versions of the php package oguzhankrcb/datamigrator. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download oguzhankrcb/datamigrator
More information about oguzhankrcb/datamigrator
Files in oguzhankrcb/datamigrator
Package datamigrator
Short Description A simple package for data migration
License MIT
Homepage https://github.com/oguzhankrcb/datamigrator
Informations about the package datamigrator

Data Migrator
Data Migrator is a PHP/Laravel package that helps you migrate data from one model to another, even if they have different structures. It's especially useful when you're migrating data between models with different database schemas.
Installation
You can install the package via composer:
Usage
Transforming Data
To transform data from one model to another, use the transformData
method. This method takes two arrays:
$toModelPrototype
and $fromModel
.
$toModelPrototype
should be an array that describes the structure of the new model, with the keys being the names of
the
new fields, and the values being the names of the fields from the old model that the new fields should be based on. For
example:
$fromModel
should be an array that represents a single row of data from the old model, with the keys being the names
of the fields from the old model, and the values being the actual values.
For example:
Here's an example of how to use transformData
:
The $newData
array will contain the transformed data, with the keys being the names of the new fields, and the values
being the corresponding values from the old model.
Output Example:
Transferring Data
To transfer all data from one model to another, use the transferAllDataFromModelToModel
method. This method takes
three
arguments: $transferToModel
, $toModelPrototype
, and $transferFromModel
.
$transferToModel
should be the fully qualified class name of the model you want to transfer the data to. For example:
$toModelPrototype
should be the same array you used with transformData
.
$transferFromModel
should be the fully qualified class name of the model you want to transfer the data from. For
example:
Here's an example of how to use transferAllDataFromModelToModel
:
In this example, we define the fields we want to transfer from the Order
model to the Invoice
model using the
$toModelPrototype
array. Then we call the
transferAllDataFromModelToModel
method, passing in the Invoice
and Order
models and the $toModelPrototype
array.
This method will transfer all the data from the Order
model to the Invoice
model, creating a new Invoice
model for
each
Order
model in the database.
If you want to transfer only one model data to another model you can use transferDataModelToModel
method
only difference from the transferAllDataFromModelToModel
method is this method only transfers one model not all
models.
Here's an example of how to use transferDataModelToModel
:
Testing
Changelog
Please see CHANGELOG for more information on what has changed recently.
Contributing
Contributions are welcome! If you find any bugs or issues, please open a new issue or submit a pull request.
Security Vulnerabilities
Please review our security policy on how to report security vulnerabilities.
Credits
- Oğuzhan KARACABAY
- All Contributors
License
The DataMigrator package is open-source software licensed under the MIT license.
All versions of datamigrator with dependencies
spatie/laravel-package-tools Version ^1.14.0
illuminate/contracts Version ^8.0|^9.0|^10.0
illuminate/support Version ^8.0|^9.0|^10.0
illuminate/database Version ^8.0|^9.0|^10.0