Rumah >pembangunan bahagian belakang >PHP8 >Bagaimana cara menggunakan argumen yang dinamakan dalam Php 8 untuk panggilan fungsi yang lebih fleksibel?
Argumen yang dinamakan dalam Php 8 membolehkan anda menentukan argumen dengan nama mereka dan bukannya bergantung semata -mata pada kedudukan mereka dalam panggilan fungsi. Ini meningkatkan kebolehbacaan kod dan mengurangkan risiko kesilapan, terutamanya apabila berurusan dengan fungsi yang mempunyai banyak parameter. Untuk menggunakan argumen yang dinamakan, anda hanya menentukan nama parameter yang diikuti oleh =>
pengendali dan nilai.
Sebagai contoh, pertimbangkan fungsi:
<🎝🎝🎝>Menggunakan hujah kedudukan:
<🎝🎝🎝>Menggunakan hujah yang dinamakan:
<🎝🎝🎝>Perhatikan bagaimana perintah hujah tidak penting apabila menggunakan argumen yang dinamakan. Anda juga boleh menghilangkan hujah pilihan, dan hanya menentukan yang anda perlukan untuk berubah:
<🎝🎝🎝> Anda boleh mencampurkan hujah -hujah yang dinamakan dan kedudukan, tetapi hujah -hujah kedudukan mesti datang sebelum argumen yang dinamakan. Ini bermakna: greet("John", times: 3)
adalah sah, tetapi greet(times: 3, "John")
tidak.
Argumen yang dinamakan menawarkan beberapa kelebihan atas hujah -hujah kedudukan:
Argumen bernama hanya boleh digunakan dengan fungsi yang ditulis untuk menyokong mereka (Php 8 dan kemudian). Anda tidak boleh menggunakan argumen yang dinamakan dengan fungsi yang ditakrifkan dalam versi lama PHP. Percubaan untuk berbuat demikian akan mengakibatkan ParseError
. Oleh itu, anda perlu mengemas kini fungsi anda untuk memanfaatkan ciri ini.
Mengendalikan hujah pilihan dengan argumen yang dinamakan adalah mudah. Anda hanya meninggalkan hujah pilihan dari panggilan fungsi jika anda tidak perlu menukar nilai lalai mereka. PHP secara automatik akan menggunakan nilai lalai yang ditakrifkan dalam tandatangan fungsi.
Sebagai contoh, merujuk kembali ke fungsi greet
:
greet(name: "Alice");
akan menggunakan nilai lalai untuk greeting
("hello") dan times
(1).greet(name: "Bob", greeting: "Good morning");
akan menggunakan nilai lalai untuk times
(1).greet(name: "Charlie", times: 2, greeting: "Howdy");
akan mengatasi semua nilai lalai.Fleksibiliti yang ditawarkan oleh argumen bernama memudahkan pengendalian parameter pilihan, menjadikan kod bersih dan lebih mudah difahami. Ingat bahawa hujah pilihan mesti diisytiharkan dengan nilai lalai dalam definisi fungsi untuk berfungsi dengan betul.
Atas ialah kandungan terperinci Bagaimana cara menggunakan argumen yang dinamakan dalam Php 8 untuk panggilan fungsi yang lebih fleksibel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!