⊗ppSpFnIFC 12 of 83 menu

PHPda ichki funksiyalarda callbacklar

PHPda parametri sifatida callback qabul qiladigan bir qator ichki funksiyalar mavjud. Ularni ishlatishning umumiy printsipini array_map funksiyasi misolida o‘rganamiz. Ushbu funksiya birinchi parametr sifatida callback, ikkinchi parametr sifatida esa massiv qabul qiladi. Funksiya callbackni massivning har bir elementiga qo‘llaydi va o‘zgartirilgan massivni qaytaradi.

Keling, ushbu funksiyani oldingi bilimlarimiz asosida ishlatish variantlarini ko‘rib chiqaylik.

Variant 1

Massivning har bir elementidan ichki funksiya sqrt yordamida kvadrat ildizni ajratib olamiz. Buning uchun parametr sifatida callbackda ushbu funksiya nomi yozilgan satrni uzatamiz:

<?php $arr = [1, 2, 3, 4, 5]; $res = array_map('sqrt', $arr); var_dump($res); ?>

Variant 2

Massivning har bir elementini biz yaratgan oddiy funksiya yordamida kvadratga ko‘taramiz. Buning uchun parametr sifatida callbackda ushbu funksiya nomi yozilgan satrni uzatamiz:

<?php $arr = [1, 2, 3, 4, 5]; function func($num) { return $num ** 2; } $res = array_map('func', $arr); var_dump($res); ?>

Variant 3

Keling, funksiyamizni anonim funksiyaga, o‘zgaruvchiga yozilgan holda o‘zgartiramiz:

<?php $arr = [1, 2, 3, 4, 5]; $func = function ($num) { return $num ** 2; }; $res = array_map($func, $arr); var_dump($res); ?>

Variant 4

Anonim funksiyani parametr sifatida uzatamiz:

<?php $arr = [1, 2, 3, 4, 5]; $res = array_map(function ($num) { return $num ** 2; }, $arr); var_dump($res); ?>

Variant 5

Strelkali funksiyadan foydalanamiz:

<?php $arr = [1, 2, 3, 4, 5]; $res = array_map(fn ($num) => $num ** 2, $arr); var_dump($res); ?>

Variant 6

Endi sonni ko‘tarish kerak bo‘lgan daraja callbackning tashqi o‘zgaruvchisi orqali berilsin. Ushbu o‘zgaruvchidan use orqali unga kirish imkoniyatidan foydalanib foydalanamiz:

<?php $arr = [1, 2, 3, 4, 5]; $pow = 3; $res = array_map(function ($num) use ($pow) { return $num ** $pow; }, $arr); var_dump($res); ?>

Variant 7

Oldingi kodni strelkali funksiya orqali qayta yozamiz. Endi $pow o‘zgaruvchisi avtomatik ravishda mavjud bo‘ladi:

<?php $arr = [1, 2, 3, 4, 5]; $pow = 3; $res = array_map(fn ($num) => $num ** $pow, $arr); var_dump($res); ?>

Amaliy vazifalar

Satrlar bilan massiv berilgan. Massivning har bir elementidagi matnni katta harflarga o‘zgartiring.

Satrlar bilan massiv berilgan. Massivning har bir elementidagi matnni teskari tartibda yozing.

Oʻzbek
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекTiếng Việt
Biz sayt ishlashi, tahlil qilish va shaxsiylashtirish uchun cookie-fayllardan foydalanamiz. Ma'lumotlarni qayta ishlash Maxfiylik siyosatiga muvofiq amalga oshiriladi.
hammasini qabul qilish sozlash rad etish