Utilisation d'opérateurs ternaires imbriqués
Dans le but de rationaliser les instructions conditionnelles, vous pourriez rencontrer le besoin d'imbriquer des opérateurs ternaires. Cependant, comme l'illustre votre exemple, y parvenir peut s'avérer délicat :
<code class="php">isset($_POST['selectedTemplate'])?$_POST['selectedTemplate']:isset($_GET['selectedTemplate'])?$_GET['selectedTemplate']:0</code>
Pour rectifier cela, il est essentiel de mettre l'expression entière entre parenthèses :
<code class="php">$selectedTemplate = isset($_POST['selectedTemplate']) ? $_POST['selectedTemplate'] : ( isset($_GET['selectedTemplate']) ? $_GET['selectedTemplate'] : 0 );</code>
Alternativement, pour une amélioration lisibilité et maintenance, envisagez d'utiliser une instruction if/else :
<code class="php">$selectedTemplate = 0; if (isset($_POST['selectedTemplate'])) { $selectedTemplate = $_POST['selectedTemplate']; } elseif (isset($_GET['selectedTemplate'])) { $selectedTemplate = $_GET['selectedTemplate']; }</code>
Cependant, pour des raisons de simplicité et de compatibilité avec les méthodes POST et GET, la solution suivante peut être plus appropriée :
<code class="php">$selectedTemplate = isset($_REQUEST['selectedTemplate']) ? $_REQUEST['selectedTemplate'] : 0;</code>
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!