2016-06-21 10 views
1

Ich möchte die Daten aller Bestellungen in einer absteigenden Liste sortieren. Ich dachte für jeden Benutzer, OrderBy zu verwenden, derzeit gebe ich nur alle Daten zurück. Ich habe mich gefragt, ob das möglich ist. Da ich nicht eine AbfrageDaten aller Bestellungen, bestellte desc

HINWEIS tue es mit: Ich mache jetzt die orderby Linie funktioniert nicht

foreach($users as $user) 
    { 

    foreach ($orders as $order) { 
    if($order->getCustomer()->getId() == $user->getId()){ 

     $orderDates = $order->getDate(); 
     $ordered = $orderDates->orderBy('date' ,'DESC'); 

    } 
    } 
+0

was möchten Sie erreichen? ein Array mit dem Datum sortiert? Sie können es nicht mit einer Abfrage mit einer WHERE-Bedingung für die Benutzer-ID und das Sortierdatum abrufen. – Matteo

+0

Was ich letztendlich erreichen möchte, ist die neueste Bestellung pro Benutzer – KevinTheGreat

Antwort

0

Sie usortcf php doc

function cmp($a, $b) 
{ 
    $ad = new DateTime($a); 
    $bd = new DateTime($b); 

    if ($ad == $bd) { 
    return 0; 
    } 

    return $ad < $bd ? -1 : 1; 
} 

dann in Ihrem Code verwenden können:

usort($orderDates, "cmp");