Bonjour, je ne suis pas sûr de poster dans le bon forum et je m'en excuse à l'avance si ce n'est pas le cas.

J'ai en fait un soucis d'optimisation sur une suite de condition dans un if else
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
val = soit un objet soit un entier;
if(!is_object(val)){
    if(!is_numeric(val)) {
        erreur ce n'est pas une valeur numérique
    }
} elseif (val instanceof ma classe) {
    val = val->num;
} else {
    erreur ce n'est pas une instance de ma classe
}
if(1 == val) {
    erreur val doit être différent de 1
}
retourne un entier val
Actuellement, j'ai 2 if d'imbriqué et un if à la suite, je ne suis pas satisfait de cette structure et je n'arrive pas à en concevoir une autre qui fasse la même chose mais qui soit optimisée idéalement dans un seul if si possible. Quelques conseils seraient les bienvenues