Hi everyone! I'm the author of code.mu :)
I'd love to chat with my non-Russian audience. I'm looking for your feedback on the site and the translation quality. Let's chat:)
⊗ppSpFnIFC 12 of 83 menu
◀ ▶

Tagasikutset PHP sisseehitatud funktsioonides

PHP-s on mitmeid sisseehitatud funktsioone, mis parameetrina võtavad vastu tagasikutseid. Nende üldist tööpõhimõtet uurime funktsiooni array_map näitel. See funktsioon võtab esimese parameetrina vastu tagasikutse ja teise parameetrina - massiivi. Funktsioon rakendab tagasikutset iga massiivi elemendi kohta ja tagastab muudetud massiivi.

Vaatame selle funktsiooni kasutamise võimalusi võttes arvesse varasematel aegadel saadud teadmisi.

Variant 1

Võtame igast massiivi elemendist ruutjuure, kasutades selleks sisseehitatud funktsiooni sqrt. Selleks edastame parameetrina tagasikutse stringina selle funktsiooni nimega:

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

Variant 2

Tõstame iga massiivi elemendi ruutu meie poolt loodud tavalise funktsiooni abil. Selleks edastame parameetrina tagasikutse stringina selle funktsiooni nimega:

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

Variant 3

Muudame oma funktsiooni anonüümseks, kirjutades selle muutujasse:

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

Variant 4

Edastame anonüümse funktsiooni parameetrina:

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

Variant 5

Kasutame noolfunktsiooni:

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

Variant 6

Olgu nüüd aste, millesse tuleb arv tõsta, määratud tagasikutse välimise muutujaga. Kasutame seda muutujat, saades sellele juurdepääsu läbi use:

<?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

Kirjutame eelmise koodi ümber noolfunktsiooni abil. Nüüd on muutuja $pow automaatselt kättesaadav:

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

Praktilised ülesanded

Antud on stringide massiiv. Teisendage iga massiivi elemendi tekst suurte tähtedega.

Antud on stringide massiiv. Pöörake iga massiivi elemendi tekst ümber nii, et sümbolid läheksid vastupidises järjekorras.

← →
↑
Eesti▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Me kasutame saidi toimimiseks, analüüsi ja personaliseerimiseks küpsiseid. Andmete töötlemine toimub vastavalt Privaatsuspoliitikale.
nõustu kõigega häälesta keeldu