Ich vergleiche jedes Element des Arrays mit jedem anderen Element des Arrays und wenn zwei Elemente die gleiche Quelle/Ziel haben, verschmilze Ziel/Quelle I das innere Array mit Mitarbeitern z.Effizientere Art der Zusammenführung von zwei Arrays
0=> source - 3 target - 4 officers => 0 - 'Aberdeen Asset Management PLC'
1=> source - 3 target - 4 officers => 0 - 'whatever'
es würde
0=> source - 3 target - 4 officers => 0 - 'Aberdeen Asset Management PLC', 1 - 'whatever'
Hier ist, wie die Daten aussehen zu
zusammengeführt werden: auf mehr Zeilen mit 1000Mein Code ist wirklich ineffizient durch die gehen die Ausführung dauert etwa 90 Sekunden, was für solche Dinge nicht akzeptabel ist.
foreach ($edges as $i => &$edge) {
for ($j = $i + 1; $j < count($edges); $j++) {
if ($edge['source'] == $edges[$j]['source'] && $edge['target'] == $edges[$j]['target']) {
foreach ($edges[$j]['officers'] as $officer) {
array_push($edge['officers'], $officer);
}
array_splice($edges, $j, 1);
}
}
}
Und Sie können Ihre Probleme nicht selbst lösen? –
@u_mulder Nun, es ist viel einfacher, wenn er ** Sie ** sagt, was er braucht und dann nur Paste kopieren. Schließlich tun Sie das umsonst, denn Sie haben nichts Besseres zu tun, als Code zu produzieren, damit andere davon profitieren können. Warum nicht allen Wünschen nachgehen, während Sie dabei sind? :) –