2016-12-28 1 views
0

J'ai un petit problème avec mon tableau et j'espère que quelqu'un peut me aider:

Array ( 
[0] => Pagekit\Blog\Model\Post Object ( 
    [id] => x 
    [title] => x 
    [slug] => x 
    [user_id] => x 
    [date] => DateTime Object ( 
     [date] => 2016-12-28 07:51:02.000000 
     [timezone_type] => 3 
     [timezone] => UTC 
    ) 
    [content] => xxxxxxxxxxxx 
    [excerpt] => xxxxxxxxxxxx 
    [status] => xxxxxxxxxxxx 
    [modified] => DateTime Object ( 
     [date] => 2016-12-28 09:17:48.000000 
     [timezone_type] => 3 
     [timezone] => UTC 
    ) 
    [comment_status] => 1 
    [comment_count] => 0 
    [user] => Pagekit\User\Model\User Object ( 
     [id] => 1 
     [username] => xxxxxxxxxxxx 
     [password] => xxxxxxxxxxxx 
     [email] => xxxxxxxxxxxx 
     [url] => xxxxxxxxxxxx 
     [registered] => DateTime Object ( 
      [date] => 2016-12-15 15:33:36.000000 
      [timezone_type] => 3 
      [timezone] => UTC 
     ) 
     [status] => 1 
     [name] => xxxxxxxxxxxx 
     [login] => DateTime Object ( 
      [date] => 2016-12-27 13:55:45.000000 
      [timezone_type] => 3 
      [timezone] => UTC 
     ) 
     [activation] => [permissions:protected] => [roles] => Array ( 
      [0] => x 
      [1] => x 
     ) 
     [data] => Array ( 
      [admin] => Array ( 
       [menu] => Array ( 
        [dashboard] => x 
        [user] => x 
        [system: system] => x 
        [blog] => x 
        [system: marketplace] => x 
        [portfolio] => x 
        [site] => x 
       ) 
      ) 
     ) 
    ) 
    [comments] => [roles] => Array () 
    [data] => Array ( 
     [title] => [markdown] => 1 [image] => Array ( 
      [src] => storage/bilderbuch/bild.jpg 
      [alt] => bild 
     ) 
     [meta] => Array ( 
      [og:description] => Hello World! 
     ) 
    ) 
) 
) 

Quelqu'un peut me expliquer comment je peux obtenir le Hello World! ou tout le reste d'ici: (les dernières lignes de ce grand tableau)

[meta] => Array ( 
      [og:description] => Hello World! 

dans un $Variable? Je sais que c'est peut-être une question stupide mais j'utilise PHP seulement depuis une semaine ou quelque chose.

+1

C'est en fait un objet à l'intérieur d'un tableau, pas un simple tableau. – arkascha

+0

Cela dépend donc de l'implémentation de la classe 'Post' que nous ne connaissons pas. Vous ne nous l'avez pas dit. – arkascha

+1

'$ array [0] -> data ['meta'] ['og: description']'? – Federkun

Répondre

2

Votre $variable est un tableau avec 1 élément à l'intérieur.
Cet objet est un objet Pagekit\Blog\Model\Post, vous devez donc d'abord besoin de $variable[0] pour vous y rendre.

Remarque - cet objet a plusieurs attributs et vous recherchez l'attribut data: $variable[0]->data.

Cet attribut est un array lui-même, où le meta est l'un de ses clés $variable[0]->data['meta'], ce qui est un autre tableau avec la clé og:description.

Ainsi, la dernière variable dont vous avez besoin est en fait

$variable[0]->data['meta']['og:description'] 
1

Je crois que vous avez utilisé https://pagekit.com/docs/developer/orm

Dans votre cas, vous pouvez parcourir vos résultats et retourner les métadonnées:

$meta = []; 
foreach ($array as $post) 
{ 
    $meta[] = $post->data['meta']; 
} 
var_dump($meta); 
0

Donc, la solution est:

$test = spliting($posts, 3); 
$var1 = $test[0]->data['meta']['og:description']; 

ici la fonction spliting divise que tout le tableau en 3 parties.