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
◀ ▶

Iebūvēto funkciju atsauces izsaukumi PHP

PHP ir vairākas iebūvētas funkcijas, kas kā parametru pieņem atsauces izsaukumus. Vispārējo darbības principu ar tām mēs izpētīsim ar funkcijas array_map piemēru. Šī funkcija kā pirmo parametru pieņem atsauces izsaukumu, bet kā otro - masīvu. Funkcija piemēro atsauces izsaukumu katram masīva elementam un atgriež modificēto masīvu.

Apskatīsim šīs funkcijas izmantošanas variantus, ņemot vērā mūsu iepriekš iegūtās zināšanas.

Variants 1

Iegūsim no katra masīva elementa kvadrātsakni, izmantojot iebūvēto funkciju sqrt. Lai to izdarītu, kā atsauces izsaukumu parametrā nodosim virkni ar šīs funkcijas nosaukumu:

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

Variants 2

Kāpināsim katru masīva elementu kvadrātā, izmantojot mūsu izveidoto parasto funkciju. Lai to izdarītu, kā atsauces izsaukumu parametrā nodosim virkni ar šīs funkcijas nosaukumu:

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

Variants 3

Pārveidosim mūsu funkciju par anonīmu funkciju, ierakstītu mainīgajā:

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

Variants 4

Nodosim anonīmo funkciju kā parametru:

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

Variants 5

Izmantosim bultiņu funkciju:

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

Variants 6

Lai tagad pakāpe, kurā jākāpina skaitlis, tiktu norādīta ar atsauces izsaukuma ārējo mainīgo. Izmantosim šo mainīgo, iegūstot piekļuvi tam caur use:

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

Variants 7

Pārrakstīsim iepriekšējo kodu, izmantojot bultiņu funkciju. Tagad mainīgais $pow būs pieejams automātiski:

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

Praktiskie uzdevumi

Dots masīvs ar virknēm. Pārveidojiet katra elementa tekstu augšējā reģistrā.

Dots masīvs ar virknēm. Apgrieziet katra elementa tekstu otrādi, lai rakstzīmes ietu apgrieztā secībā.

← →
↑
Latviešu▼
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt