Simplifier un petit code

WRInaute impliqué
Bonjour,

J'aimerais savoir si ce petit bout de code est simplifiable.

Code:
$table = !is_numeric($userrow['bag'.$bag.'id']) ? 'equips' : 'items';

]switch ($table) {
			case 'equips': $type = 1; break;
			case 'items': $type = 2; break;
			default: $type = 3;
			}

Merci
 
WRInaute accro
S'il n'y a que ça dans ton code, et que $table n'est pas utilisé ou modifié par ailleurs, tu peux faire un raccourci comme ça:

Code:
$type = is_numeric($userrow['bag'.$bag.'id'])?2:1;

Mais j'ai tendance à penser que si c'est écrit comme ça c'est qu'il doit y avoir une raison, non?

Jacques.
 
WRInaute discret
sff a dit:
En terme d'exécution, c'est plus rapide ou ça revient au même ?
en théorie ça devrait être plue rapide puisqu'il n'y a pas de test switch, mais bon ça doit se jouer à quelques millièmes de secondes je pense

La solution de jcaron me semble bonne aussi en partant du principe que $table ne sert pas ailleurs.
 
WRInaute accro
Sans connaître le contexte, c'est difficile de dire si c'est important ou pas... Si c'est au coeur d'une boucle qui est exécutée 10000 fois par requête et qu'il se prend des milliers de requêtes par seconde, ça peut faire toute la différence...

Jacques.
 
Discussions similaires
Haut