microsoftgraph / msgraph-sdk-php

Microsoft Graph Library for PHP.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

How to get the values from response which list the content of a directory?

angelmotta opened this issue · comments

Hello team
I am querying the endpoint to get the list of items inside a directory in OneDrive but I am struggling to retrieve the contents of the response received.

public static function listFilesOneDriveDir(): Models\DriveItemCollectionResponse {
        $result = GraphHelper::$appClient->drives()->byDriveId('xyz')->items()->byDriveItemId('xyz')->children()->get()->wait();
        return $result;
}

is the model DriveItemCollectionsResponse correct?
I didn't find in the documentation which Models should I use, so I was browsing the code in this repo (am I missing something here?) how to know which type of Model I am receiving?

Finally how to retrieve the attributes of each element inside the field called "values" from the response body which is an array of elements (type drive items if I am correct) I want to retrieve the attributes "name", "webUrl", "createdBy" (Object). The content of the directory are pdf or png files.

$result = GraphHelper::listFilesOneDriveDir();
foreach ($result->getValue() as $element) {
    echo $element->getSize();      // ONLY this work
    echo $element->getWebDavUrl(); // doesn't work and I dont' find methods to get "name", "createdby" or others attributes
    print("-----");
}

I think finding the methods and identifying the response type (Models) is the difficult part for me and I don't find examples about how to retrieve that data.

I would appreciate it if you could give me some instructions to familiarize myself. It is the first time that I interact with this library, however initially I followed the tutorial with Javascript and recovering the response data was easier compared to the Php version.