I have an object that is in the form:
CommentID: [
"UserID": UserID,
"Status": "active/deleted",
"DateTime": "DateTime",
"Comment": "CommentText",
"Likes": [
UserID: DateTime of Like,
UserID: DateTime of Like...
],
"Comments": [same as parent]
]
This means, I could have multiple levels of comments -> A comment on a comment on a comment.
If I want to delete a comment, I get from the view the full chain of CommentIDs... parent commentID, sub-parent, sub-sub.. etc..
How can I now unset this particular comment.
Something like this:
Imagine I get the following: 1;2;3 where 1 is CommentID of parent, 2 is CommentID of child of parent and 3 is CommentID of child of child.
This comes to me as a variable in PHP.
I would like now to unset 3..
ideally, I'd write,
unset($object->{1}->{2}->{3});
and it will work.
But, i can't assume the number of levels. So I have to somehow loop through the comment ID's and figure out a way.
Without an example of what you actually have, I'm assuming you have an array of comments, and inside of each comment could be an array of more comments inside the
comments
field.If this is the case you would be doing something along the lines of
unset($object->comments[1]->comments[2]->comments[3]);
This would unset the third comment, of the second comment of the first comment in your object.
If this is not the answer you are looking for, please give an actually example.