Cara menggunakan what is array_filter php?

Dalam tutorial ini, saya akan membuat daftar fungsi umum array PHP dengan contoh-contoh penggunaan dan praktek terbaik. Setiap pengembang PHP harus tahu bagaimana menggunakannya dan bagaimana menggabungkan fungsi array agar kode mudah dibaca dan singkat.

Juga, ada presentasi dengan contoh kode yang diberikan, sehingga Anda dapat men-downloadnya dari link yang berhubungan dan menunjukkannya kepada kolega Anda untuk membangun tim yang lebih kuat.

Dasar-Dasar

Mari kita mulai dengan fungsi dasar yang bekerja dengan kunci dan nilai array. Salah satu dari mereka adalah array_combine(), yang menciptakan sebuah array menggunakan satu array untuk kunci dan satu lagi untuk nilai-nilai:

1$keys = ['sky', 'grass', 'orange']; 2$values = ['blue', 'green', 'orange']; 34$array = array_combine($keys, $values); 5print_r($array); 6$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 5$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 7$keys = ['sky', 'grass', 'orange']; 8$keys = ['sky', 'grass', 'orange']; 92021

Anda harus tahu, bahwa fungsi array_values() mengembalikan array dari nilai yang diindeks, array_keys() mengembalikan array dari kunci array yang diberikan, dan array_flip() menukar kunci dengan nilai-nilai:

12322532745$keys = ['sky', 'grass', 'orange']; 16$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 0$values = ['blue', 'green', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 2$values = ['blue', 'green', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 9$keys = ['sky', 'grass', 'orange']; 630

Membuat Kode Anda Lebih Pendek

Fungsi list(), yang tidak benar-benar sebuah fungsi, tetapi bahasa konstruksi, dirancang untuk menetapkan variabel dengan cara singkat. Sebagai contoh, berikut ini adalah contoh dasar menggunakan fungsi 309:

1322343437539641$keys = ['sky', 'grass', 'orange']; 043$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 446$keys = ['sky', 'grass', 'orange']; 648

Konstruksi ini bekerja sempurna dengan fungsi seperti 310 atau 311. Juga, Anda dapat melewatkan beberapa parameter, jika Anda tidak membutuhkan mereka untuk didefinisikan:

1$array = array_combine($keys, $values); 02$array = array_combine($keys, $values); 23$array = array_combine($keys, $values); 4

Juga, 309 dapat digunakan dengan 313, yang membuat konstruksi ini bahkan lebih baik:

1$array = array_combine($keys, $values); 623$array = array_combine($keys, $values); 9451553655

Dengan fungsi extract(), Anda dapat mengekspor asosiatif array ke variabel. Untuk setiap elemen dari sebuah array, suatu variabel akan dibuat dengan nama kunci dan nilai sebagai nilai elemen:

1572593print_r($array); 14print_r($array); 35print_r($array); 56$keys = ['sky', 'grass', 'orange']; 0print_r($array); 8$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 461

Sadarilah bahwa 314 tidak aman jika Anda bekerja dengan data pengguna (seperti hasil dari permintaan), jadi sebaiknya gunakan fungsi ini dengan flag 315 dan 316.

Kebalikan dari fungsi sebelumnya adalah fungsi compact(), yang membuat array asosiatif dari variabel:

16326536745$keys = ['sky', 'grass', 'orange']; 006print_r($array); $keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 09$keys = ['sky', 'grass', 'orange']; 8$keys = ['sky', 'grass', 'orange']; 1120$keys = ['sky', 'grass', 'orange']; 13$keys = ['sky', 'grass', 'orange']; 1430

Fungsi Penyaringan

Ada fungsi yang hebat bagi penyaringan array, dan itu disebut array_filter(). Menyampaikan array sebagai parameter pertama dan fungsi anonim sebagai parameter kedua. Mengembalikan 317 di sebuah fungsi callback jika Anda ingin meninggalkan elemen ini dalam array, dan 318 jika tidak:

1$keys = ['sky', 'grass', 'orange']; 1723$keys = ['sky', 'grass', 'orange']; 204$keys = ['sky', 'grass', 'orange']; 225$keys = ['sky', 'grass', 'orange']; 246$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 27

Ada cara untuk menyaring tidak hanya oleh nilai-nilai. Anda dapat menggunakan 319 atau 320 sebagai parameter ketiga untuk menyampaikan kunci atau semua nilai dan kunci ke fungsi callback.

Juga, Anda dapat memanggil 321 tanpa callback untuk menghapus semua nilai kosong:

1$keys = ['sky', 'grass', 'orange']; 2923$keys = ['sky', 'grass', 'orange']; 3245$keys = ['sky', 'grass', 'orange']; 35

Anda hanya bisa mendapatkan nilai-nilai unik dari array menggunakan fungsi array_unique(). Perhatikan bahwa fungsi ini akan menjaga kunci-kunci dari unsur-unsur unik pertama:

1$keys = ['sky', 'grass', 'orange']; 372$keys = ['sky', 'grass', 'orange']; 3934$keys = ['sky', 'grass', 'orange']; 4256$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 49$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 51$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 53$keys = ['sky', 'grass', 'orange']; 8$keys = ['sky', 'grass', 'orange']; 5520$keys = ['sky', 'grass', 'orange']; 57$keys = ['sky', 'grass', 'orange']; 1421

Dengan array_column(), Anda bisa mendapatkan daftar nilai kolom dari sebuah array multi-dimensi, seperti jawaban dari database SQL atau impor dari file CSV. Cukup menyampaikan array dan nama kolom:

1572$keys = ['sky', 'grass', 'orange']; 633$keys = ['sky', 'grass', 'orange']; 654$keys = ['sky', 'grass', 'orange']; 675print_r($array); 56$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 72$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 75

Mulai dari PHP 7, 322 menjadi lebih kuat, karena sekarang diizinkan untuk . Jadi bekerja dengan berbagai model dapat menjadi lebih mudah:

1$keys = ['sky', 'grass', 'orange']; 772$keys = ['sky', 'grass', 'orange']; 79

Berjalan Melalui Array

Menggunakan array_map(), Anda dapat menerapkan callback untuk setiap elemen dari sebuah array. Anda dapat menyampaikan nama fungsi atau fungsi anonim untuk mendapatkan sebuah array baru berdasarkan pada array yang diberikan:

1$keys = ['sky', 'grass', 'orange']; 812$keys = ['sky', 'grass', 'orange']; 8334$keys = ['sky', 'grass', 'orange']; 8656$keys = ['sky', 'grass', 'orange']; 89$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 91$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 93$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 95$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 8$keys = ['sky', 'grass', 'orange']; 98

Ada mitos bahwa tidak ada cara untuk menyampaikan nilai-nilai dan kunci dari array ke callback, tapi kita bisa memecahkannya:

120023203420552076$keys = ['sky', 'grass', 'orange']; 0210$keys = ['sky', 'grass', 'orange']; 2212$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 8$keys = ['sky', 'grass', 'orange']; 320219$keys = ['sky', 'grass', 'orange']; 1422122230

Tapi ini terlihat kotor. Sebaliknnya lebih baik untuk menggunakan array_walk(). Fungsi ini terlihat sama seperti 323, tetapi bekerja berbeda. Pertama-tama, sebuah array dilewatkan oleh referensi, sehingga 324 tidak membuat array baru, tetapi mengubah array yang diberikan. Jadi sebagai array sumber, Anda dapat melewatkan nilai array dengan referensi dalam callback. Kunci array dapat juga dilewatkan dengan mudah:

12252227322942315print_r($array); 56$keys = ['sky', 'grass', 'orange']; 0236$keys = ['sky', 'grass', 'orange']; 2238$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 24$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 824320$keys = ['sky', 'grass', 'orange']; 14$keys = ['sky', 'grass', 'orange']; 1222$keys = ['sky', 'grass', 'orange']; 324925025125225325425530

Menggabungkan Array

Cara terbaik untuk menggabungkan dua atau lebih array dalam PHP adalah dengan menggunakan fungsi array_merge(). Item dari array-array akan digabungkan bersama-sama, dan nilai-nilai yang sama dengan string kunci akan ditimpa dengan nilai terakhir:

125822603426352656$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 2271$keys = ['sky', 'grass', 'orange']; 4273$keys = ['sky', 'grass', 'orange']; 6275$keys = ['sky', 'grass', 'orange']; 82772021

Untuk menghapus nilai array dari array lain (atau array-array), gunakan array_diff(). Untuk mendapatkan nilai-nilai yang hadir dalam array yang diberikan, gunakan array_intersect(). Contoh berikutnya akan menunjukkan cara kerjanya:

128122833428652886$keys = ['sky', 'grass', 'orange']; 0291$keys = ['sky', 'grass', 'orange']; 2293

Melakukan Perhitugan dengan Nilai-nilai Array

Gunakan array_sum() untuk mendapatkan jumlah nilai array, array_product() untuk melipatgandakan mereka, atau membuat rumus Anda sendiri dengan array_reduce():

1295232984$values = ['blue', 'green', 'orange']; 0056$values = ['blue', 'green', 'orange']; 03$keys = ['sky', 'grass', 'orange']; 0$values = ['blue', 'green', 'orange']; 05$keys = ['sky', 'grass', 'orange']; 2$values = ['blue', 'green', 'orange']; 07

Untuk menghitung semua nilai dari array, gunakan array_count_values(). Itu akan memberikan semua nilai-nilai unik dari array yang diberikan sebagai kunci dan menghitung nilai-nilai tersebut sebagai nilai:

1$values = ['blue', 'green', 'orange']; 092$values = ['blue', 'green', 'orange']; 1134$values = ['blue', 'green', 'orange']; 1456$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 0$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 2$values = ['blue', 'green', 'orange']; 21$keys = ['sky', 'grass', 'orange']; 4$values = ['blue', 'green', 'orange']; 23$keys = ['sky', 'grass', 'orange']; 6$values = ['blue', 'green', 'orange']; 25$keys = ['sky', 'grass', 'orange']; 830

Menghasilkan Array

Untuk menghasilkan sebuah array dengan ukuran tertentu dan nilai yang sama, gunakan array_fill():

1$values = ['blue', 'green', 'orange']; 292$values = ['blue', 'green', 'orange']; 31

Untuk menghasilkan sebuah array dengan berbagai kunci dan nilai-nilai, seperti hari jam atau huruf, gunakan range():

1$values = ['blue', 'green', 'orange']; 332$values = ['blue', 'green', 'orange']; 3534$values = ['blue', 'green', 'orange']; 385$values = ['blue', 'green', 'orange']; 40

Untuk mendapatkan bagian dari array—misalnya, hanya tiga unsur pertama—gunakan array_slice():

1$values = ['blue', 'green', 'orange']; 422$values = ['blue', 'green', 'orange']; 443$values = ['blue', 'green', 'orange']; 46

Penyortiran Array

Ada baiknya untuk diingat bahwa setiap fungsi penyortiran di PHP bekerja dengan array dengan referensi dan mengembalikan true pada keberhasilan atau false pada kegagalan. Ada fungsi penyortiran dasar yang disebut sort(), dan ia menyortir nilai dalam urutan menaik tanpa mengamankan kunci. Fungsi penyortiran dapat didahului oleh huruf-huruf berikut:

  • a, menyortir mengamankan kunci
  • k, menyortir berdasarkan kunci
  • r, menyortir terbalik/urutan menurun
  • u, menyortir dengan fungsi user

Anda dapat melihat kombinasi dari huruf-huruf ini di dalam tabel berikut:

akruaasort
arsortuasortkksortkrsortrarsortkrsortrsortuuasort
usort

Menggabungkan Fungsi Array Seperti Boss

Sihir yang nyata dimulai ketika Anda mulai menggabungkan fungsi-fungsi array. Berikut adalah bagaimana Anda dapat memotong dan memindahkan nilai-nilai kosong hanya dalam satu baris kode dengan 321 dan 323:

1$values = ['blue', 'green', 'orange']; 4823$values = ['blue', 'green', 'orange']; 514$values = ['blue', 'green', 'orange']; 53

Untuk membuat id ke judul peta dari array model, kita bisa menggunakan kombinasi dari 327 dan 322:

1$values = ['blue', 'green', 'orange']; 5523$values = ['blue', 'green', 'orange']; 584$values = ['blue', 'green', 'orange']; 605$values = ['blue', 'green', 'orange']; 626$values = ['blue', 'green', 'orange']; 64

Untuk mendapatkan tiga nilai-nilai teratas dari sebuah array, kita dapat menggunakan 329, 330, dan 331:

1$values = ['blue', 'green', 'orange']; 6623$values = ['blue', 'green', 'orange']; 694$values = ['blue', 'green', 'orange']; 715$values = ['blue', 'green', 'orange']; 736$keys = ['sky', 'grass', 'orange']; 0$values = ['blue', 'green', 'orange']; 76$keys = ['sky', 'grass', 'orange']; 2$keys = ['sky', 'grass', 'orange']; 1$keys = ['sky', 'grass', 'orange']; 4$keys = ['sky', 'grass', 'orange']; 3$keys = ['sky', 'grass', 'orange']; 6$values = ['blue', 'green', 'orange']; 82$keys = ['sky', 'grass', 'orange']; 8$values = ['blue', 'green', 'orange']; 8420$values = ['blue', 'green', 'orange']; 86$keys = ['sky', 'grass', 'orange']; 1430

Ini mudah untuk menggunakan 332 dan 323 untuk menghitung jumlah pesanan dalam beberapa baris:

1$values = ['blue', 'green', 'orange']; 902$values = ['blue', 'green', 'orange']; 923$values = ['blue', 'green', 'orange']; 944$values = ['blue', 'green', 'orange']; 965print_r($array); 56$keys = ['sky', 'grass', 'orange']; 0301$keys = ['sky', 'grass', 'orange']; 2303$keys = ['sky', 'grass', 'orange']; 4305$keys = ['sky', 'grass', 'orange']; 6$keys = ['sky', 'grass', 'orange']; 8308

Kesimpulan

Seperti yang Anda lihat, pengetahuan fungsi-fungsi utama array dapat membuat kode Anda jauh lebih pendek dan lebih mudah dibaca. Tentu saja, PHP memiliki lebih banyak fungsi array, dan bahkan fungsi yang diberikan memiliki banyak variasi untuk digunakan dengan parameter dan flag tambahan, tapi saya berpikir bahwa dalam tutorial ini kita telah membahas dasar-dasar yang setiap pengembang PHP harus mengetahuinya.

Harap dicatat bahwa saya telah membuat sebuah presentasi dengan contoh yang diberikan, sehingga Anda dapat men-download-nya dari link terkait dan menunjukkannya kepada tim Anda.

Apa yang dimaksud dengan array dalam php?

Apa itu Array? Dalam PHP, array adalah struktur data yang memungkinkan anda untuk menyimpan beberapa elemen dalam satu variabel. Elemen-elemen ini disimpan sebagai pasangan nilai-kunci.

Apa itu multidimensional array?

Multi-dimensional Array adalah array yang menyimpan array lain pada setiap indeks, bukan elemen tunggal. Dengan kata lain, kita dapat mendefinisikan array multi dimensi sebagai array dari suatu array.

Apa yang dimaksud dengan array asosiatif?

Array asosiatif merupakan array yang berisi key dan value . Key dalam array ini bertindak sebagai indeks. Bedanya, jika pada array terindeks default indeksnya adalah angka dan tidak dapat diubah tipenya. Maka pada array asosiatif, indeks atau key ini bisa kita atur menggunakan tipe data lain seperti string.

Postingan terbaru

LIHAT SEMUA