$election1->addCandidate('Caplet'); $election1->addCandidate('A'); $myLutoCandidate = $election1->addCandidate('Lutoslawski'); // Return the Condorcet\Candidate object. // Automatic name $myAutomaticCandidate = $election1->addCandidate(); // Return an automatic Condorcet\Candidate $myAutomaticCandidate->getName(); // return 'B'. Because we have already register the A candidate above. // An objet $myMessiaenCandidate = new Candidate('Olivier Messiaen'); $election1->addCandidate($myMessiaenCandidate); $election1->addCandidate(new Candidate('Ligeti')); $election1->addCandidate(new Candidate('Koechlin')); # -B- Change your mind ? $election1->removeCandidate('A'); $election1->removeCandidate($myAutomaticCandidate); // Lutoslawski change his name $myLutoCandidate->setName('Wiltod Lutoslawski'); # Done ! # What was his old names? $myLutoCandidate->getHistory(); // return the full history with timestamp of this Candidate naming # -C- Check your candidate list, if you forget it $election1->getCandidatesList(); // Return an array pupulate by each Candidate objet $election1->getCandidatesList(true); // Return an array pupulate by each Candidate name as String. // OK, I need my Debussy (want his candidate object) $myDebussyCandidate = $election1->getCandidateObjectByName('Debussy'); // IV - Votes