Saya bertanya-tanya apakah saya perlu menggunakan "break" dalam fungsi "switch" ketika "return" digunakan.
function test($string)
{
switch($string)
{
case 'test1':
return 'Test 1: ' . $string;
case 'test2':
return 'Test 2: ' . $string;
}
}
Saya sudah mencobanya, dan bekerja dengan baik tanpa "putus". Tapi saya perlu tahu apakah ini aman. Terima kasih.
Jawaban:
Ya, Anda dapat menggunakan
return
alih-alihbreak
...break
bersifat opsional dan digunakan untuk mencegah " jatuh " melalui semuacase
pernyataan lainnya . Jadireturn
bisa digunakan dengan cara yang sama, sebagaireturn
akhir dari eksekusi fungsi.Juga, jika semua
case
pernyataan Anda seperti ini:Dan setelah
switch
pernyataan yang baru saja Anda milikireturn $result
, menggunakanreturn find_result(...);
masingcase
- masing akan membuat kode Anda lebih mudah dibaca.Terakhir, jangan lupa tambahkan
default
casingnya. Jika Anda berpikir kode Anda tidak akan pernah mencapaidefault
case maka Anda dapat menggunakanassert
fungsinya, karena Anda tidak pernah bisa yakin.sumber
Anda tidak perlu istirahat, kembali menghentikan eksekusi fungsi.
(untuk referensi: http://php.net/manual/en/function.return.php mengatakan:
)
sumber
Tidak itu tidak perlu, karena ketika kata kunci kembali dipanggil itu akan menunjukkan bahwa fungsi tertentu yang dipanggil oleh sakelar / case telah berakhir.
sumber
Tidak, Anda tidak perlu
break
dalamswitch case
pernyataan. Inibreak
sebenarnya opsional, tetapi gunakan dengan hati-hati.sumber
Anda tidak membutuhkannya, tetapi saya sangat menyarankan untuk menggunakannya dalam hal apa pun sebagai praktik yang baik.
sumber
Istirahat hanyalah pernyataan peringatan yang digunakan untuk membatasi kontrol struktur sakelar agar tidak masuk ke kasus lain ... misalnya jika Anda memiliki tiga pernyataan kasus dan nilai untuk kasus pertama dan Anda telah menggunakan kasus tanpa struktur pemutusan apa pun maka semua kasus berikut akan dieksekusi meskipun kondisi terpenuhi hanya untuk kasus pertama ... Return dapat menjalankan fungsi asme sehingga tidak akan menjadi masalah jika Anda menggunakan return sebagai ganti break karena return akan mengambil kendali dari pernyataan switch case yang merupakan kebutuhan saat itu ...... semoga dapat membantu ....
sumber
return memberikan kontrol kembali ke metode pemanggilan, dimana break melompat ke instruksi pertama setelah blok saklar.
sumber