2011-01-11 10 views
1

Ich brauche Hilfe bei Round Robin Scheduling. Ich habe Termin, Firma, Benutzer.Round Robin Scheduling

z.B. 2 Benutzer in 1 Firma

 
Appointment 1 user 1 company 1 
appointment 2 user 2 company 1 
appointment 3 user 1 company 1 
appointment 4 user 2 company 1.

Verwenden Sie PHP-Skript. Ich stecke fest. Jeder hat einen Vorschlag. Bitte helfen Sie!

+2

Ihre Frage ist nicht klar. Kannst du umformulieren? –

+0

Verwenden Sie eine Datenbank? Versuchen Sie Konflikte zu verhindern? Willst du eine Liste von Leuten so bestellen, dass die Liste die Leute oder vielleicht Verabredungen gleichmäßig ausspannt? – Jason

Antwort

2

Hier sind, wie grundlegenden Round-Robin zu implementieren, nicht sicher, ob dies ist, was Sie die commen haben gesagt ment wie du bist etwas vage:

<?php 

    $appointments = array(); 
    $users = array('Jon', 'Billy', 'George', 'Michael'); 

    for ($i = 0, $max=count($users); $i < $max; $i++) { 
    for($j = $i+1; $j < $max; $j++) { 
     $appointments[] = array($users[$i], $users[$j]); 
    } 
    } 

    print_r($appointments); 

?> 
1

Was Sie wollen, dass das Kartesisches Produkt von Benutzern, Unternehmen.

function getAppts($users, $companies) 
{ 
    $appts = array(); 
    foreach ($users as $user) { 
     foreach ($companies as $company) { 
      $appts[] = array($user, $company); 
     } 
    } 
    return $appts; 
} 

$appts = getAppts(array('user1', 'user2'), array('company1')); 

Dadurch werden die Kombinationen produzieren Sie brauchen:

Array 
(
    [0] => Array 
     (
      [0] => user1 
      [1] => company1 
     ) 

    [1] => Array 
     (
      [0] => user2 
      [1] => company1 
     ) 

) 

Die Funktion ermöglicht es Ihnen, mehrere Benutzer oder Unternehmen hinzufügen und alle Kombinationen Termin bekommen. Sie können dann durch $appts foreach und erstellen Sie Ihre Abfragen.

Verwandte Themen