Je comprends que ce sujet a été brièvement abordé here mais j'espère comprendre les choses à faire et à ne pas faire en général en utilisant plusieurs types de retour en PHP. Il semble y avoir des opinions variées sur cette fonctionnalité de PHP. J'aurais tendance à être d'accord que, comme indiqué dans le fil lié ci-dessus, pour les erreurs, l'utilisation d'exceptions est probablement plus approprié; Mais, qu'en est-il d'une fonction renvoyant, disons, deux types de valeurs significatives? Par exemple, disons une fonction qui renvoie toutes les lumières qui sont éteintes dans une maison (:) oui, je l'aile!)PHP Best Practice: Utilisation de types de retour mixtes
Essentiellement, voici ce que je veux transmettre: Si une condition de base n'est pas rencontré et je ne vois pas l'intérêt d'aller de l'avant et de calculer ma liste, je renvoie un booléen. Sinon, allez-y et faire:
public function getLightsThatAreOff($house)
{
// if $house itself does not have any power, return true
// else
//compile an array of lights that are off and return then
}
Je pense que le cas d'utilisation mentionnée ci-dessus est une sorte d'un sweet spot pour plusieurs types de retour. Dans les deux cas, j'apprécierais que quelqu'un fournisse un ensemble de directives générales sur la façon de déterminer s'il faut ou non utiliser cette fonction.
Merci!
Je dirais personnellement que getLightsThatAreOff() n'a de sens que lorsque la puissance est en marche. Lorsqu'on l'appelle quand le courant est coupé, je dirais que cela a des conséquences insignifiantes. –