|
| 1 | +The JsonPath Component |
| 2 | +================== |
| 3 | + |
| 4 | + The JsonPath component queries JSON strings using JSONPath syntax. |
| 5 | + |
| 6 | +What is It? |
| 7 | +----------- |
| 8 | + |
| 9 | +The Symfony JsonPath component parses JSON strings to retrieve specifics values. |
| 10 | + |
| 11 | +`JSON`_, *JavaScript Object Notation*, is a lightweight data-interchange format. |
| 12 | +It is easy for humans to read and write. JSON is a widely used format in REST API and data manipulation. |
| 13 | + |
| 14 | +.. tip:: |
| 15 | + |
| 16 | + Learn more about `JSONPath`_ specifications. |
| 17 | + |
| 18 | +Installation |
| 19 | +------------ |
| 20 | + |
| 21 | +.. code-block:: terminal |
| 22 | +
|
| 23 | + $ composer require symfony/json-path |
| 24 | +
|
| 25 | +.. include:: /components/require_autoload.rst.inc |
| 26 | + |
| 27 | +Why? |
| 28 | +---- |
| 29 | + |
| 30 | +Fast |
| 31 | +~~~~ |
| 32 | + |
| 33 | +Lorem ipsum dolor sit amet, consectetur adipiscing elit. |
| 34 | +Vestibulum id velit turpis. Sed vitae nisl placerat, rutrum ex nec, porta ante. |
| 35 | +Maecenas condimentum cursus risus at fringilla. |
| 36 | + |
| 37 | +Easy to read |
| 38 | +~~~~~~~~~~~ |
| 39 | + |
| 40 | +Lorem ipsum dolor sit amet, consectetur adipiscing elit. |
| 41 | +Vestibulum id velit turpis. Sed vitae nisl placerat, rutrum ex nec, porta ante. |
| 42 | +Maecenas condimentum cursus risus at fringilla. |
| 43 | + |
| 44 | +Write powerful tests |
| 45 | +~~~~~~~~~~~~~~~~~~~~ |
| 46 | + |
| 47 | +Lorem ipsum dolor sit amet, consectetur adipiscing elit. |
| 48 | +Vestibulum id velit turpis. Sed vitae nisl placerat, rutrum ex nec, porta ante. |
| 49 | +Maecenas condimentum cursus risus at fringilla. |
| 50 | + |
| 51 | +Ready-to-use functions |
| 52 | +~~~~~~~~~~~~~~~~~~~~ |
| 53 | + |
| 54 | +Lorem ipsum dolor sit amet, consectetur adipiscing elit. |
| 55 | +Vestibulum id velit turpis. Sed vitae nisl placerat, rutrum ex nec, porta ante. |
| 56 | +Maecenas condimentum cursus risus at fringilla. |
| 57 | + |
| 58 | +.. _using-the-symfony-json-path-component: |
| 59 | + |
| 60 | +Using the Symfony JsonPath Component |
| 61 | +-------------------------------- |
| 62 | + |
| 63 | +Lorem ipsum dolor sit amet, consectetur adipiscing elit. |
| 64 | +Vestibulum id velit turpis. Sed vitae nisl placerat, rutrum ex nec, porta ante. |
| 65 | +Maecenas condimentum cursus risus at fringilla. |
| 66 | + |
| 67 | +The JsonCrawler |
| 68 | +~~~~~~~~~~~~~~~~~~~~~ |
| 69 | + |
| 70 | +(introduce the JsonCrawler and basic property access) |
| 71 | + |
| 72 | +Build JsonPath |
| 73 | +~~~~~~~~~~~~~~~~~~ |
| 74 | + |
| 75 | +(introduce the JsonPath builder) |
| 76 | +-> list available method in the component (length, count, value, search, match, first, last) |
| 77 | + |
| 78 | +Advanced Usage |
| 79 | +--------------------- |
| 80 | + |
| 81 | +Complex queries |
| 82 | +~~~~~~~~~~~~~~~~~~ |
| 83 | + |
| 84 | +(show examples or more complex queries) |
| 85 | + |
| 86 | +Tests |
| 87 | +~~~~~~~~~~~~~~~~~~ |
| 88 | + |
| 89 | +(show tests examples) |
| 90 | + |
| 91 | + |
| 92 | + |
| 93 | +.. _`JSONPath`: https://datatracker.ietf.org/doc/html/rfc9535 |
| 94 | +.. _`JSON`: https://www.iso.org/iso-8601-date-and-time-format.html |
0 commit comments