https://github.com/ridvanaltun/php-json-patch-generator
Generate JSON Patch (IETF RFC-6902).
https://github.com/ridvanaltun/php-json-patch-generator
composer json json-patch php
Last synced: 8 months ago
JSON representation
Generate JSON Patch (IETF RFC-6902).
- Host: GitHub
- URL: https://github.com/ridvanaltun/php-json-patch-generator
- Owner: ridvanaltun
- License: mit
- Created: 2020-01-31T13:22:52.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2020-02-03T13:28:09.000Z (almost 6 years ago)
- Last Synced: 2025-05-05T22:48:59.351Z (9 months ago)
- Topics: composer, json, json-patch, php
- Language: PHP
- Size: 6.84 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# php-json-patch-generator
[](https://packagist.org/packages/ridvanaltun/json-patch-generator)
[](https://packagist.org/packages/ridvanaltun/json-patch-generator)
[](https://packagist.org/packages/ridvanaltun/json-patch-generator)
[](https://packagist.org/packages/ridvanaltun/json-patch-generator)
[](https://packagist.org/packages/ridvanaltun/json-patch-generator)
> Generate JSON Patch (IETF RFC-6902).
This library allows you generate json-patch in PHP.
## Installation
```bash
$ composer require ridvanaltun/json-patch-generator
```
## Usage
```php
'foo',
'surname' => 'bar',
'skils' => [
'computer_science' => true,
'algorithm' => true,
'math' => false,
],
'specs' => [
'a',
'b',
'c',
]
];
$currSnap = [
'name' => 'foo',
'age' => 23,
'skils' => [
'computer_science' => true,
'algorithm' => false,
],
'specs' => [
'a',
'b',
'd',
'e',
]
];
$jsonPatch = $utils->generateJsonPatch($currSnap, $oldSnap);
var_dump($jsonPatch);
```
**OUTPUT:**
```
array(7) {
[0]=>
array(3) {
["op"]=>
string(3) "add"
["path"]=>
string(4) "/age"
["value"]=>
int(23)
}
[1]=>
array(3) {
["op"]=>
string(7) "replace"
["path"]=>
string(16) "/skils/algorithm"
["value"]=>
bool(false)
}
[2]=>
array(3) {
["op"]=>
string(3) "add"
["path"]=>
string(6) "/specs"
["value"]=>
string(1) "d"
}
[3]=>
array(3) {
["op"]=>
string(3) "add"
["path"]=>
string(6) "/specs"
["value"]=>
string(1) "e"
}
[4]=>
array(2) {
["op"]=>
string(6) "remove"
["path"]=>
string(8) "/surname"
}
[5]=>
array(2) {
["op"]=>
string(6) "remove"
["path"]=>
string(11) "/skils/math"
}
[6]=>
array(3) {
["op"]=>
string(6) "remove"
["path"]=>
string(6) "/specs"
["value"]=>
string(1) "c"
}
}
```