der Annahme, dass Sie eine Reihe von Vereinbarungen mit dem Format haben Sie zur Verfügung gestellt, können Sie etwas tun könnte:
<?php
$json = '[{
"agreementId": "",
"events": [
{
"actingUserEmail": "",
"actingUserIpAddress": "",
"date": "date",
"description": "",
"participantEmail": "an email",
"type": "",
"versionId": ""
}
],
"locale": "",
"modifiable": false,
"name": "a name",
"nextParticipantSetInfos": [
{
"nextParticipantSetMemberInfos": [
{
"email": "",
"waitingSince": "date"
}
]
}
],
"participantSetInfos": [
{
"participantSetId": "",
"participantSetMemberInfos": [
{
"email": "",
"participantId": ""
}
],
"roles": [
""
],
"status": "a status"
}
],
"status": "",
"vaultingEnabled": false
}]';
$parsed = json_decode($json, true);
$names = [];
foreach($parsed as $agreement) {
$names[] = $agreement['name'];
$emails = [];
foreach($agreement['events'] as $event) {
$emails[] = $event['participantEmail'];
}
$status = [];
foreach($agreement['participantSetInfos'] as $participant) {
$status[] = $participant['status'];
}
}
var_dump($names);
var_dump($emails);
var_dump($status);
Natürlich sollten Sie einige Überprüfungen auf leere Werte durchführen und so, aber nur um Ihnen eine Idee zu geben. Da Sie die Beziehung zwischen Name, Status und E-Mail nicht klären, habe ich sie nur in separaten Arrays genommen, aber das ist nichts, was nicht mit einer Array-Behandlung behoben werden kann.
Hoffe, das hilft!