Mengapa Saya Memerlukan Tanda Kurung untuk Operator Ternary Bersarang?

Barbara Streisand
Lepaskan: 2024-11-04 09:04:30
asal
624 orang telah melayarinya

Why Do I Need Parentheses for Nested Ternary Operators?

Pengendali Ternary Bersarang: Teka-teki Selesai

Dalam bidang pengaturcaraan, pengendali ternary bersarang boleh menjadi alat yang berharga untuk pernyataan bersyarat yang ringkas. Walau bagaimanapun, melaksanakannya kadangkala boleh menjadi rumit. Satu cabaran terbaru yang dihadapi oleh pengguna ialah menggunakan isset() dalam bentuk bersarang:

isset($_POST['selectedTemplate'])?$_POST['selectedTemplate']:isset($_GET['selectedTemplate'])?$_GET['selectedTemplate']:0
Salin selepas log masuk

Pengguna menghadapi masalah dengan ungkapan ini dan meminta bantuan daripada komuniti pengaturcaraan. Mari kita mendalami penyelesaian yang muncul:

Untuk operator ternary bersarang berfungsi dengan betul, mereka mesti dibungkus dalam kurungan. Ini memastikan bahawa ungkapan dinilai dalam susunan yang dimaksudkan. Berikut ialah kod yang diperbetulkan:

$selectedTemplate = isset($_POST['selectedTemplate'])
                  ? $_POST['selectedTemplate']
                  : (
                       isset($_GET['selectedTemplate'])
                       ? $_GET['selectedTemplate']
                       : 0
                  );
Salin selepas log masuk

Walau bagaimanapun, untuk kebolehselenggaraan dan kejelasan yang lebih baik, menggunakan pernyataan if/else ialah pendekatan yang lebih disyorkan:

$selectTemplate = 0;

if (isset($_POST['selectedTemplate'])) {
    $selectTemplate = $_POST['selectedTemplate'];
} elseif (isset($_GET['selectedTemplate'])) {
    $selectTemplate = $_GET['selectedTemplate'];
}
Salin selepas log masuk

Akhir sekali, untuk kesederhanaan dan kemudahan gunakan, ia patut dipertimbangkan $_REQUEST:

$selectedTemplate = isset($_REQUEST['selectedTemplate'])
                  ? $_REQUEST['selectedTemplate']
                  : 0;
Salin selepas log masuk

Ingat, pilihan pendekatan akhirnya bergantung pada keperluan khusus permohonan anda. Selamat membuat pengekodan, dan semoga ternaries anda bersarang dengan sempurna!

Atas ialah kandungan terperinci Mengapa Saya Memerlukan Tanda Kurung untuk Operator Ternary Bersarang?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!