Ceci est une chose mineure, mais ça me dérange depuis un moment. J'ai fouetté mon cerveau pour un moyen d'écrire des déclarations comme ceci sans toute répétition de code. Par exemple:Test et écho sans répétition?
echo isset($array[0])? $array[0]: 'not set';
$var = empty($other_var)? '$other_var not set': $other_var;
Y at-il une sorte de test et retour (pour les premiers) ou un test-and-set (pour ce dernier) opérateur, je ne sais pas? Cela peut sembler un point mineur, mais la duplication semble inutile et peut conduire à de très longues lignes qui peuvent compliquer la maintenance. Tenir compte:
$another_var = array_key_exists($array[Utility::FindIndex($username)][Constants::App_CRITERION], $haystack[NthDimension('my dimensional indicator')])? $array[Utility::FindIndex($username)][Constants::App_CRITERION], $haystack[NthDimension('my dimensional indicator')]: 'not set';
Oui, oui, la ligne ci-dessus est totalement artificiel, mais il est pas impensable que quelque chose comme cela pourrait se produire. Il me semble étrange qu'il n'y ait pas moyen de tester quelque chose et d'attribuer sa valeur (si elle est vraie) sans répétition sans répétition.
Il est trivial de créer votre propre fonction d'utilité faire cela pour vous n'est-ce pas? (En fait la page de doc de isset inclut d'autres fonctions de peuples pour cela dans les commentaires: http://php.net/manual/en/function.isset.php) –
Votre deuxième code n'a pas de sens pour moi: '$ array [ Utilitaire :: FindIndex ($ username)] [Constantes :: App_CRITERION], $ haystack [NthDimension ('mon indicateur dimensionnel')] 'Qu'est-ce que c'est censé être? (Je fais référence à la partie dans la clause '?', Pas 'array_key_exists'.) – NikiC