Pengendali ternary di PHP, yang juga dikenali sebagai pengendali bersyarat, adalah cara tersendiri untuk menulis pernyataan bersyarat. Fungsi utamanya adalah untuk menilai keadaan dan mengembalikan salah satu daripada dua nilai yang mungkin berdasarkan sama ada keadaan itu benar atau palsu. Sintaks pengendali ternary dalam PHP adalah seperti berikut:
<code class="php">condition ? value_if_true : value_if_false;</code>
Di sini, condition
dinilai. Jika benar, ungkapan itu menilai value_if_true
; Jika ia palsu, ia menilai value_if_false
. Ini boleh menjadi sangat berguna untuk pemeriksaan dan tugasan bersyarat yang ringkas dan ringkas.
Sebagai contoh, katakan kita mempunyai $age
yang berubah -ubah dan kita ingin menentukan sama ada seseorang itu dewasa:
<code class="php">$age = 20; $is_adult = ($age >= 18) ? 'Yes' : 'No'; echo $is_adult; // Outputs: Yes</code>
Dalam contoh ini, keadaan $age >= 18
dinilai. Jika benar, $is_adult
diberikan rentetan 'Yes'
, jika tidak, ia diberikan 'No'
.
Pengendali ternary dapat memudahkan pernyataan bersyarat dengan mengurangkan garis kod yang diperlukan untuk struktur mudah jika ELSE. Berikut adalah beberapa senario di mana ia boleh membantu:
Tugasan sebaris:
Daripada menggunakan pernyataan IF-ELSE multi-line untuk memberikan nilai berdasarkan keadaan, anda boleh menggunakan pengendali ternary untuk melakukan ini dalam satu baris.
<code class="php">// Using if-else if ($score >= 60) { $result = 'Pass'; } else { $result = 'Fail'; } // Using ternary operator $result = ($score >= 60) ? 'Pass' : 'Fail';</code>
Nilai pulangan:
Dalam fungsi, anda boleh menggunakan pengendali ternary untuk mengembalikan nilai yang berbeza berdasarkan keadaan.
<code class="php">function checkTemperature($temp) { return ($temp > 30) ? 'Hot' : 'Not Hot'; } echo checkTemperature(35); // Outputs: Hot</code>
Echo atau cetak pernyataan:
Anda juga boleh menggunakan pengendali ternary secara langsung dalam echo atau cetak pernyataan untuk mengeluarkan mesej yang berbeza.
<code class="php">$loggedIn = true; echo $loggedIn ? 'Welcome back!' : 'Please log in.';</code>
Menggunakan pengendali ternary menawarkan beberapa faedah ke atas pernyataan tradisional IF-ELSE dalam PHP:
Walau bagaimanapun, penting untuk menggunakan pengendali ternary dengan bijak. Terlalu menggunakannya, terutamanya untuk keadaan yang kompleks, boleh menyebabkan kebolehbacaan yang dikurangkan dan membuat kod lebih sukar difahami.
Pengendali ternary dapat meningkatkan kebolehbacaan kod dalam senario berikut:
Tugasan bersyarat sederhana:
Apabila anda perlu memberikan nilai berdasarkan keadaan mudah, pengendali ternary boleh menjadi lebih jelas dan lebih ringkas.
<code class="php">// Less readable with if-else $status; if ($isActive) { $status = 'Active'; } else { $status = 'Inactive'; } // More readable with ternary operator $status = $isActive ? 'Active' : 'Inactive';</code>
Menetapkan Nilai Lalai:
Apabila menetapkan nilai lalai jika pembolehubah tidak ditetapkan atau dibatalkan, pengendali ternary boleh membuat ini lebih mudah.
<code class="php">// Less readable with if-else $name; if (isset($_POST['name']) && !empty($_POST['name'])) { $name = $_POST['name']; } else { $name = 'Guest'; } // More readable with ternary operator $name = isset($_POST['name']) && !empty($_POST['name']) ? $_POST['name'] : 'Guest';</code>
Fungsi pulangan:
Apabila fungsi perlu mengembalikan nilai yang berbeza berdasarkan keadaan, pengendali ternary dapat memudahkan struktur fungsi.
<code class="php">// Less readable with if-else function isWeekend($day) { if ($day == 'Saturday' || $day == 'Sunday') { return true; } else { return false; } } // More readable with ternary operator function isWeekend($day) { return ($day == 'Saturday' || $day == 'Sunday') ? true : false; }</code>
Dalam kes ini, anda juga boleh mengembalikan keadaan secara langsung untuk kod yang lebih ringkas:
<code class="php">function isWeekend($day) { return $day == 'Saturday' || $day == 'Sunday'; }</code>
Dalam semua contoh ini, pengendali ternary menjadikan kod itu lebih ringkas dan berpotensi lebih mudah dibaca, dengan syarat keadaan itu sendiri tidak terlalu kompleks.
Atas ialah kandungan terperinci Terangkan penggunaan pengendali ternary dalam PHP.. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!