microsoftgraph / microsoftgraph/msgraph-sdk-php

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

Open
#1,464 0 comments 1 reaction 1 assignee View on GitHub

@SilasKenneth is already working on this.

Since Mar 7, 2024.

question
Dominant language
PHP
Stars
669
Forks
150
Avg merge
15h 21m
Merged PRs (30d)
3

Description

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.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.