Bonjour,
J'ai un probleme sur lequel je m'arrache les cheveux depuis de longues heures. Voici mon probleme :
J'ai un tableau array1 :
Dans ce tableau j'ai d'autres tableaux composés de 3 tableaux chacun :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 array:5 [▼ 0 => array:3 [▶] 1 => array:3 [▶] 2 => array:3 [▶] 3 => array:3 [▶] 4 => array:3 [▶] ]
Ce qui m'intéresse de faire de faire c'est de récupérer chaque élément de chaque clé ("LinkElement", "Linktext" et "articleText") pour initialiser des setters.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118 ^ array:5 [▼ 0 => array:3 [▼ "linkElement" => array:5 [▼ 0 => "LinkElement1" 1 => "LinkElement2" 2 => "LinkElement3" 3 => "LinkElement4" 4 => "LinkElement5" ] "linkText" => array:5 [▼ 0 => "linkText1" 1 => "linkText2" 2 => "linktext3" 3 => "linkText4" 4 => "linkText5" ] "articleText" => array:5 [▼ 0 => " articletext1" 1 => " articletext2" 2 => " articletext3" 3 => " articletext4" 4 => " articletext5" ] ] 1 => array:3 [▼ "linkElement" => array:5 [▼ 0 => "LinkElement6" 1 => "LinkElement7" 2 => "LinkElement8" 3 => "LinkElement9" 4 => "LinkElement10" ] "linkText" => array:5 [▼ 0 => "linkText6" 1 => "linkText7" 2 => "linktext8" 3 => "linkText9" 4 => "linkText10" ] "articleText" => array:5 [▼ 0 => " articletext6" 1 => " articletext7" 2 => " articletext8" 3 => " articletext9" 4 => " articletext10" ] ] 2 => array:3 [▼ "linkElement" => array:5 [▼ 0 => "LinkElement11" 1 => "LinkElement12" 2 => "LinkElement13" 3 => "LinkElement14" 4 => "LinkElement15" ] "linkText" => array:5 [▼ 0 => "linkText11" 1 => "linkText12" 2 => "linktext13" 3 => "linkText14" 4 => "linkText15" ] "articleText" => array:5 [▼ 0 => " articletext11" 1 => " articletext12" 2 => " articletext13" 3 => " articletext14" 4 => " articletext15" ] ] 3 => array:3 [▼ "linkElement" => array:5 [▼ 0 => "LinkElement16" 1 => "LinkElement17" 2 => "LinkElement28" 3 => "LinkElement19" 4 => "LinkElement20" ] "linkText" => array:5 [▼ 0 => "linkText16" 1 => "linkText17" 2 => "linktext18" 3 => "linkText19" 4 => "linkText20" ] "articleText" => array:5 [▼ 0 => " articletext16" 1 => " articletext17" 2 => " articletext18" 3 => " articletext19" 4 => " articletext20" ] ] 4 => array:3 [▼ "linkElement" => array:5 [▼ 0 => "LinkElement21" 1 => "LinkElement22" 2 => "LinkElement23" 3 => "LinkElement24" 4 => "LinkElement25" ] "linkText" => array:5 [▼ 0 => "linkText21" 1 => "linkText22" 2 => "linktext23" 3 => "linkText24" 4 => "linkText25" ] "articleText" => array:5 [▼ 0 => " articletext21" 1 => " articletext22" 2 => " articletext23" 3 => " articletext24" 4 => " articletext25" ] ] ]
Voici le code que j'ai construit pour essayer de faire ça, ça sera certainement plus parlant :
Ce code fonctionne apparemment bien, saut qu'il me renvoie un tableau uniquement des derniers objets instanciés alors que je voudrais tous les objets. Je devrai en avoir 25 objets alors que ce code m'en retourne que 5.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35 foreach($results as $result) { $article = new Liens(); foreach($result as $k => $element) { if($k === "linkElement") { foreach($element as $article_element) { $article->setLinkElement($article_element; } } if($k === "linkText") { foreach($element as $article_element) { $article->setLinkText($article_element); } } if($k === 'articleText') { foreach($element as $article_element) { $article->setArticleText($article_element); } } $article->setCreatedAt(date('Y-m-d H:i:s')); $article->setClubID("1"); } $articles[] = $article;
Voici ce que j'obtiens:
voici ce que je souhaite obtenir:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 ^ array:5 [▼ 0 => App\Model\Liens {#4253 ▼ +id: null +linkElement: "LinkElement5" +linkText: "LinkText5" +articleText: "articleText5" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 1 => App\Model\Liens {#4241 ▼ +id: null +linkElement: "LinkElement10" +linkText:"LinkText10" +articleText: "articleText10" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 2 => App\Model\Liens {#957 ▼ +id: null +linkElement: "LinkElement15 +linkText:"LinkText15" +articleText: "articleText15" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 3 => App\Model\Liens {#4235 ▼ +id: null +linkElement: "LinkElement20" +linkText:"LinkText20" +articleText: "articleText20" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 4 => App\Model\Liens {#4234 ▼ +id: null +linkElement: "LinkElement25" +linkText:"LinkText25" +articleText: "articleText25" +created_at: "2020-02-09 10:41:05" +club_id: "1" } ] }
Merci pour votre aide
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44 ^ array:25 [▼ 0 => App\Model\Liens {#4253 ▼ +id: null +linkElement: "LinkElement1" +linkText: "LinkText1" +articleText: "articleText1" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 1 => App\Model\Liens {#4241 ▼ +id: null +linkElement: "LinkElement2" +linkText: "LinkText2" +articleText: "articleText2" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 2 => App\Model\Liens {#957 ▼ +id: null +linkElement: "LinkElement3 +linkText:"LinkText3" +articleText: "articleText3" +created_at: "2020-02-09 10:41:05" +club_id: "1" } 3 => App\Model\Liens {#4235 ▼ +id: null +linkElement: "LinkElement4" +linkText:"LinkText4" +articleText: "articleText4" +created_at: "2020-02-09 10:41:05" +club_id: "1" } [...] 25=> App\Model\Liens {#4234 ▼ +id: null +linkElement: "LinkElement25" +linkText:"LinkText25" +articleText: "articleText25" +created_at: "2020-02-09 10:41:05" +club_id: "1" } ]
Partager