Lambda ifodalari misollar bilan. Yuqori darajadagi funktsiyalar va lambdalar
BAHAM KO'RING
BAHAM KO'RING
Ushbu qo'llanmada biz sizni lambda funktsiyalari va yopilishlari, shuningdek ulardan foydalanish misollarini ko'rib chiqamiz.
Vazifalarni bajarish uchun sizga quyidagi dasturlar kerak bo'ladi:
Eslatmalar:
Siz PHP bo'yicha asosiy bilimga egasiz deb o'ylaymiz.
Bu qanday funktsiyalar: lambda va yopish?
PHP 5.3 o'zining sintaksisini JavaScript, Python, Ruby va boshqalar kabi dasturlash tillariga yaqinlashtiradigan juda ko'p qiziqarli xususiyatlarga ega. Va bundan ham muhimi, bu xususiyatlar foydali va mashhur bo'ldi.
Lambda funktsiyalari Va yopilishlar- bu nomga ega bo'lmagan dastur ob'ektlari, ular yordami kerak bo'lgan joyda amalga oshiriladi. Esda tutingki, lambda funktsiyalari kontekstni ushlamaydi, lekin yopish uni qo'lga kiritish uchun mo'ljallangan. Darhol aytaylik, PHP-dagi bu ikkala funksiya ham sinfga turiga mos keladi Yopish, va yuqoridagi farqlar PHPda amaliy foydalanish uchun muhim emas. Amalda siz faqat Closure sinfidan meros bo'la olmasligingizni va misollar yarata olmasligingizni sezasiz. U faqat ichki foydalanish uchun - yozish uchun joriy qilingan.
Lambda funktsiyalari
Lambda funksiyalaridan boshqa funksiyalarga parametr sifatida foydalanishni o‘rganing
Lambda funktsiyalari, ba'zilarning "sog'lig'i" uchun juda foydali bo'lib chiqadi funktsiyalari, ayniqsa, parametr sifatida talab qilinadiganlar funktsiyasi.
Keling, har qanday massivni saralaydigan usort() funksiyasini ko'rib chiqaylik. Ishlash uchun ikkita parametr kerak. Birinchisi saralanadigan massiv. Ikkinchisi, ikkita argumentli funksiya. Ushbu funktsiya unga berilgan ikkita qiymatni taqqoslaydi. Agar ular teng bo'lsa, 0 ni, birinchisi kichik bo'lsa -1 ni va ikkinchisi kichik bo'lsa 1 ni qaytarishi kerak.
Tasavvur qiling-a, dasturning faqat bitta joyida biz ob'ektlar massivini qaysidir maydon bo'yicha saralashimiz kerak, biz alohida funktsiyani e'lon qilishimiz shart emas, biz lambda funktsiyasidan foydalanamiz. IN Ro'yxat №1 massivni saralash uchun lambda funksiyasidan qanday foydalanishni ko'rsatadi.
Do'stlaringiz bilan baham: |