La confusion entre tableau et les objets dans Laravel

Je suis en train d'apprendre Laravel et il utilise OUPS concepts. Maintenant j'ai du mal à comprendre la différence entre un tableau et des objets. Je sais ce qu'est un tableau et objet.

Tableau peut détenir plus d'une variable à un endroit où un objet est une entité indépendante qui a ses propres arguments et des méthodes. Nous utilisons habituellement la boucle foreach pour parcourir en boucle.

Dans laravel, les données sont renvoyées sous la forme d'une instance du modèle d'objet. Lorsque la réponse à la requête a plusieurs résultats, puis les données sont renvoyées sous la forme d'un tableau qui contient des objets. J'essayais de comprendre la Collecte de Classe utilisé dans laravel.

Codebright de référence dit

La Collection de la classe elle-même, n'est qu'un wrapper pour un tableau d'objets, mais a un tas d'autres méthodes intéressantes pour vous aider à arracher les éléments de la matrice.

Maintenant revenir à ma confusion. J'ai été en utilisant différentes méthodes comme l' all() et first() des méthodes pour récupérer le résultat. Mais parfois, quand j'ai utilisé de la flèche (->) afin d'extraire les données à l'aide d'une boucle foreach, à partir d'un objet (contenues dans un tableau), il a fait une erreur qui dit quelque chose comme elle est un non-objet. Ensuite, j'ai utilisé les crochets et les données ont été affichées.

Je sais que nous utilisons [] pour récupérer des données à partir de baies et nous utilisons -> pour récupérer des données à partir d'objets. Mais je suis toujours confus au sujet de Laravel. Quelqu'un peut-il indiquer clairement la différence entre eux, en référence à la Collection de classe utilisé dans Laravel?

Edit:: La confusion a commencé tout en utilisant ce code:

foreach($self_conversations as $self_conversations_fetch){
    //fetching each conversation id
    $conversation_id = Conversation::find($self_conversations_fetch->conversation_id);
    $user_id = array();

//fetching each conversation member's id
    foreach($conversation_id->conversationsMember as $conversationmembers)
        $user_id[] = $conversationmembers->user_id;

        $self_id = User::where('email', Session::get('email'))->first()->id;
        $self_id_array = array($self_id);
        $friend_id_array = array_diff($user_id, $self_id_array);

        foreach($friend_id_array as $friend_id) array_push($friend_ids, $friend_id);

    $conversations_reply_obj = ConversationReply::where('conversation_id', $self_conversations_fetch->conversation_id)->orderBy('updated_at', 'desc')->first();

    $conversations_reply[] = $conversations_reply_obj['reply'];
}

Comme vous pouvez le voir, j'ai utilisé des crochets pour récupérer les données(dans la dernière ligne).

$conversations_reply[] = $conversations_reply_obj['reply'];

je m'attendais à flèche de travailler ici

OriginalL'auteur Kanav | 2014-04-06