Pawan Kumar Singh
Pawan Kumar Singh

Reputation: 43

printing array data using forlopp

$responses= stdClass Object (
 [status] => SUCCESS
 [value] => stdClass Object (
   [messageTaskList] => Array (
     [0] => stdClass Object (
       [id] => 19
       [userId] => 38
       [text] => some text
       [currentCount] => 0
       [finishCount] => 5000
       [createTime] => 1470223038000
       [finishTime] =>
       [status] => 1
       [requestsSent] => 0
       [url] => linked.in/searchparams=marketingits=sample )
    [1] => stdClass Object (
       [id] => 20
       [userId] => 38
       [text] => Grand Rapids
       [currentCount] => 0
       [finishCount] => 5000
       [createTime] => 1470223059000
       [finishTime] =>
       [status] => 1
       [requestsSent] => 0
       [url] => linked.in/searchparams=marketingits=sample )
    [2] => stdClass Object (
       [id] => 21
       [userId] => 38
       [text] => Grand Rapids
       [currentCount] => 0
       [finishCount] => 5000
       [createTime] => 1470223751000
       [finishTime] =>
       [status] => 1
       [requestsSent] => 0
       [url] => https://google.com ) ) )
 [action] => GET_MESSAGE_TASK_LIST
 [eventId] => )

foreach($responses as $key => $value) {
                    echo $value->id . ", " . $value->text . "<br>";
                }

I am trying to show the array value in the table but I am getting the error mentioned below.

Notice: Trying to get property of non-object in E:\xampp\htdocs\linkedin\all-tasks.php on line 238

Notice: Trying to get property of non-object in E:\xampp\htdocs\linkedin\all-tasks.php on line 238

Upvotes: 0

Views: 67

Answers (2)

Kartik Shah
Kartik Shah

Reputation: 107

id and text is within the array objects of value and messageTaskList, so by putting pointers on the same, loops enters into the inner array where id and text resides.

This should be helpful:

foreach($responses->value->messageTaskList as $key => $value) {

      echo $value->id . ", " . $value->text . "<br>";

}

Upvotes: 4

Rafal Kozlowski
Rafal Kozlowski

Reputation: 760

This is how Your $responses structure looks like:

$responses = stdClass (
    [status] => SUCCESS
    [value] =>
        stdClass Object (
            [messageTaskList] => Array (
                [0] => stdClass Object (
                    [id] => 19
                    [userId] => 38
                    [text] => some text
                    [currentCount] => 0
                    [finishCount] => 5000
                    [createTime] => 1470223038000
                    [finishTime] =>
                    [status] => 1
                    [requestsSent] => 0
                    [url] => linked.in/searchparams=marketingits=sample
                )
                [1] => stdClass Object (
                    [id] => 20
                    [userId] => 38
                    [text] => Grand Rapids
                    [currentCount] => 0
                    [finishCount] => 5000
                    [createTime] => 1470223059000
                    [finishTime] =>
                    [status] => 1
                    [requestsSent] => 0
                    [url] => linked.in/searchparams=marketingits=sample
                )
                [2] => stdClass Object (
                    [id] => 21
                    [userId] => 38
                    [text] => Grand Rapids
                    [currentCount] => 0
                    [finishCount] => 5000
                    [createTime] => 1470223751000
                    [finishTime] =>
                    [status] => 1
                    [requestsSent] => 0
                    [url] => https://google.com
                )
            )
        )
        [action] => GET_MESSAGE_TASK_LIST
        [eventId] =>
    )

All You need to do is to iterate on the right element:

foreach ($responses->value->messageTaskList as $key => $value) {
    echo $value->id . ", " . $value->text . "<br>";        
}

Upvotes: 1

Related Questions