Memahami Operator Ternary Bersarang
Dalam PHP, menggunakan pengendali ternary bersarang boleh memudahkan kod dan meningkatkan kebolehbacaannya. Walau bagaimanapun, menghadapi ralat sintaks bukanlah sesuatu yang luar biasa.
Kod yang disediakan cuba menggunakan operator ternary bersarang, tetapi ralat mungkin disebabkan oleh kurungan yang hilang di sekitar operasi ternary kedua. Ungkapan yang diperbetulkan hendaklah:
<code class="php">isset($_POST['selectedTemplate']) ? $_POST['selectedTemplate'] : (isset($_GET['selectedTemplate']) ? $_GET['selectedTemplate'] : 0);</code>
Sebagai alternatif, pernyataan if/else yang betul boleh digunakan untuk kebolehselenggaraan yang lebih baik:
<code class="php">$selectedTemplate = 0; if (isset($_POST['selectedTemplate'])) { $selectedTemplate = $_POST['selectedTemplate']; } elseif (isset($_GET['selectedTemplate'])) { $selectedTemplate = $_GET['selectedTemplate']; }</code>
Namun, untuk kesederhanaan, adalah disyorkan untuk menggunakan $ tatasusunan _REQUEST[], yang menggabungkan tatasusunan $_POST[] dan $_GET[]:
<code class="php">isset($_REQUEST['selectedTemplate']) ? $_REQUEST['selectedTemplate'] : 0;</code>
Atas ialah kandungan terperinci Mengapa Saya Mendapat Ralat Sintaks Apabila Menggunakan Operator Ternary Bersarang dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!