Salut tout le monde
Mon problème est assez simple. Je fais une série de test pour savoir si un évènement est possible. A chaque test, mon drapeau peut passer de 1 (possible) à 0 (impossible), mais jamais dans l'autre sens. J'utilise une syntaxe qui me satisfait que moyennement et j'aimerais savoir s'il existe plus simple (et sans doute plus propre). Voilà à quoi j'arrive pour l'instant :
Bien sûr le code là est très simplifiée les tests sont plus complexes que des vrai/faux et les instructions sont parfois assez lourdes (genre créations d'objets et/ou requêtes SQL assez lourdes.
L'objectif est donc d'éviter les opérations inutiles, en gros de s'arrêter dès que $flag passe à 0; mais de pouvoir continuer tant que $flag reste à 1...
J'avais bien pensé aux switch case, mais à vrai dire c'est pas la syntaxe où je suis le plus à l'aise et je vois mal comment l'adapter ici.
Merci d'avance à tout ceux qui auront des idées ^^
Modifié par Lothindil (08 Nov 2012 - 10:33)
Mon problème est assez simple. Je fais une série de test pour savoir si un évènement est possible. A chaque test, mon drapeau peut passer de 1 (possible) à 0 (impossible), mais jamais dans l'autre sens. J'utilise une syntaxe qui me satisfait que moyennement et j'aimerais savoir s'il existe plus simple (et sans doute plus propre). Voilà à quoi j'arrive pour l'instant :
function VerifTruc()
{
$flag=1;
if(!$machin){$flag=0;}
if($flag==1)
{
//instruction
if(!$machin2){$flag=0;}
}
if($flag==1)
{
//instructions
if($machin3){$flag=0;}
}
return $flag;
}
Bien sûr le code là est très simplifiée les tests sont plus complexes que des vrai/faux et les instructions sont parfois assez lourdes (genre créations d'objets et/ou requêtes SQL assez lourdes.
L'objectif est donc d'éviter les opérations inutiles, en gros de s'arrêter dès que $flag passe à 0; mais de pouvoir continuer tant que $flag reste à 1...
J'avais bien pensé aux switch case, mais à vrai dire c'est pas la syntaxe où je suis le plus à l'aise et je vois mal comment l'adapter ici.

Merci d'avance à tout ceux qui auront des idées ^^
Modifié par Lothindil (08 Nov 2012 - 10:33)