⊗ppSpFnIFC 12 of 83 menu

Callback dalam Fungsi Bawaan PHP

Di PHP, ada sejumlah fungsi bawaan yang menerima callback sebagai parameternya. Prinsip umum bekerja dengannya akan kita pelajari menggunakan contoh fungsi array_map. Fungsi ini menerima callback sebagai parameter pertama, dan array sebagai parameter kedua. Fungsi ini menerapkan callback ke setiap elemen array dan mengembalikan array yang telah diubah.

Mari kita lihat berbagai opsi penggunaan fungsi ini dengan mempertimbangkan pengetahuan yang telah kita peroleh sebelumnya.

Opsi 1

Ambil akar kuadrat dari setiap elemen array menggunakan fungsi bawaan sqrt. Untuk melakukannya, kita akan meneruskan string berisi nama fungsi tersebut sebagai parameter callback:

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

Opsi 2

Pangkatkan setiap elemen array menjadi kuadrat menggunakan fungsi biasa yang kita buat. Untuk melakukannya, kita akan meneruskan string berisi nama fungsi tersebut sebagai parameter callback:

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

Opsi 3

Ubah fungsi kita menjadi fungsi anonim, yang disimpan dalam sebuah variabel:

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

Opsi 4

Teruskan fungsi anonim langsung sebagai parameter:

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

Opsi 5

Gunakan fungsi panah (arrow function):

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

Opsi 6

Sekarang, misalkan pangkat yang digunakan untuk memangkatkan angka, ditentukan oleh variabel eksternal dari callback. Mari kita gunakan variabel ini, dengan mengaksesnya melalui use:

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

Opsi 7

Tulis ulang kode sebelumnya menggunakan fungsi panah. Sekarang variabel $pow akan dapat diakses secara otomatis:

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

Tugas Praktis

Diberikan sebuah array berisi string. Ubahlah teks dari setiap elemen array menjadi huruf besar (upper case).

Diberikan sebuah array berisi string. Baliklah teks dari setiap elemen array sehingga karakternya berurutan secara terbalik.

Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak