Kegiatan pemrograman tidak dapat dipisahkan dari manajemen array variabel. dalam bekerja dengan array, terkadang kita perlu membandingkan dua array untuk beberapa kebutuhan. Berikut ini adalah fungsi-fungsi dalam PHP yang paling umum digunakan untuk perbandingan array
in_array
Fungsi ini berfungsi untuk membandingkan string dengan variabel array. parameter pertama kita masukkan string yang ingin kita cari kemudian pada parameter kedua kita masukkan variabel array sebagai objek pencarian
in_array("string_cari", $objek_array);fungsi ini akan mengembalikan nilai boolean true dan false atau 1 dan 0. jika string yang dicari ditemukan dalam array variabel daftar maka nilai kembalian akan menjadi 1 (benar) di sisi lain, jika tidak ditemukan maka akan mengembalikan nilai 0 (salah)
$nama = ['yudi', 'bayu', 'syifa']; echo in_array('yudi', $nama); // true _Perlu dicatat bahwa string pencarian di in_array bersifat case-sensitive. pastikan kita mencocokkan data pada objek array
$nama = ['yudi', 'bayu', 'syifa']; echo in_array('Bayu', $nama); // false
kita bisa melakukan pengecekan lebih spesifik terkait tipe data sebagai pembanding dengan memasukkan parameter ketiga berupa nilai boolean. lihat kode di bawah ini
$nama = ['yudi', 'bayu', 'syifa', 100]; echo in_array('100', $nama); // true echo in_array('100', $nama, TRUE); // false echo in_array(100, $nama, TRUE); // true
array_diff
fungsi array_diff melakukan perbandingan antara dua array dan kemudian mengembalikan array data yang berbeda hanya dalam perspektif array di parameter pertama
$kota = ['jakarta', 'surabaya', 'medan', 'bandung']; $kota2 = ['jakarta', 'surabaya', 'medan', 'solo']; dump(array_diff($kota, $kota2)); // 3 => "bandung" dump(array_diff($kota2, $kota)); // 3 => "solo" _jika kita memasukkan variabel $city sebagai parameter pertama maka fungsi akan memeriksa perbedaan data pada perspektif variabel $city saja, dan sebaliknya jika kita melakukan pengaturan parameter pertama pada $city2 maka fungsi akan memeriksa hanya pada perspektif $city2
jika kita ingin mengecek perbandingan dua array dengan indeks yang dibawanya, fungsi array_diff_assoc bisa menjadi solusinya
$buah = ['mangga', 'manggis', 'markisa', 'melon']; $buah2 = ['mangga', 'manggis', 'melon']; dump(array_diff_assoc($buah, $buah2)); // output: // 2 => "markisa" // 3 => "melon"
Kode di atas menghasilkan output berupa dua array yang dianggap berbeda. “passion” jelas tidak ada di array $buah2. tapi kenapa "melon" dianggap tidak ada? . jika kita perhatikan, "melon" di $buah disimpan di index 3, sedangkan di $buah2 "melon" di index 2. itu sebabnya fungsi ini menganggap kedua nilai itu berbeda
array_intersect
Fungsi ini hampir mirip dengan fungsi array_diff, yaitu membandingkan dua buah array. tetapi perbedaan dalam fungsi ini menghasilkan keluaran yang berlawanan dari fungsi array_diff. fungsi array_intersect akan menampilkan data yang dianggap sama
$buah = ['mangga', 'manggis', 'markisa', 'melon']; $buah2 = ['mangga', 'manggis', 'melon']; dump(array_intersect($buah, $buah2)); // output: // 0 => "mangga" // 1 => "manggis" // 3 => "melon" _untuk memeriksa apakah indeks disertakan, kita dapat menggunakan fungsi array_intersect_assoc. fungsi akan menampilkan data yang sama bersama dengan indeks yang dibawanya
Karakter yang telah ditetapkan "" (lebih besar dari) dikonversi ke entitas HTML:
$str = "Ini adalah beberapa teks tebal. ";
echo htmlspecialchars($str);
?>
Keluaran HTML dari kode di atas adalah sebagai berikut (lihat sumber)
This is some bold text.
Output browser dari kode di atas adalah sebagai berikut
Ini adalah beberapa teks tebal
Menjalankan contoh »
Definisi dan Penggunaan
htmlspecialchars() berfungsi untuk beberapa karakter yang tersedia ke dalam entitas HTML
Karakter yang telah ditetapkan adalah
- & (Ampersand) menjadi & amp;
- "(Kutipan ganda) menjadi & quot;
- '(Kutipan tunggal) menjadi'
- (Lebih besar dari) menjadi & gt;
Tip. Untuk mengembalikan entitas HTML khusus ke karakter, gunakan fungsi htmlspecialchars_decode()
tata bahasa
htmlspecialchars( string,flags,karakter-set,double_encode )
parameter stringdescriptionDiperlukan. Ketentuan string yang akan dikonversi. benderaOpsional. Cara menangani tanda kutip, penyandian yang tidak valid, dan jenis dokumen
jenis koleksi yang tersedia
- ENT_COMPAT - bawaan. Pengkodean hanyalah tanda kutip ganda
- ENT_QUOTES - Pengkodean kutipan ganda dan tunggal
- ENT_NOQUOTES - tidak menyandikan kutipan apa pun
Kode salah
- ENT_IGNORE - abaikan pengkodean yang tidak valid, daripada fungsi mengembalikan string kosong. Ini harus dihindari, karena dapat mempengaruhi keselamatan
- ENT_SUBSTITUTE - untuk mengganti penyandian yang tidak valid dengan karakter pengganti Unicode U + FFFD (UTF-8) atau & # FFFD ditunjukkan;
- ENT_DISALLOWED - alternatif untuk menentukan jenis titik dokumen yang tidak valid Kode Unicode ke karakter pengganti U + FFFD (UTF-8) atau & # FFFD;
tipe dokumen memerlukan penggunaan flag tambahan
- ENT_HTML401 - bawaan. Sebagai HTML4. 01 penanganan kode
- ENT_HTML5 - penanganan kode sebagai HTML 5
- ENT_XML1 - sebagai kode penanganan XML 1
- ENT_XHTML - sebagai kode penanganan XHTML
nilai yang diperbolehkan
- UTF-8 - bawaan. ASCII kompatibel multi-byte Unicode 8
- ISO-8859-1 - Eropa Barat
- ISO-8859-15 - Eropa Barat (untuk bergabung dengan simbol euro + ISO-8859-1 dalam huruf Prancis dan Finlandia hilang)
- cp866 - set karakter Cyrillic khusus DOS
- CP1251 - Kumpulan karakter Cyrillic khusus Windows
- cp1252 - Kumpulan karakter Eropa Barat khusus Windows
- KOI8-R - Rusia
- BIG5 - Bahasa Cina Tradisional, terutama digunakan di Taiwan
- GB2312 - Cina Sederhana, kumpulan karakter standar nasional
- BIG5-HKSCS - Big5 dengan ekstensi Hong Kong
- Shift_JIS - Jepang
- EUC-JP - Jepang
- MacRoman - kumpulan karakter yang digunakan oleh sistem operasi Mac
Catatan. Di versi PHP 5.4 sebelumnya, kumpulan karakter yang tidak dikenal akan diabaikan oleh ISO-8859-1 sebagai gantinya. Sejak PHP5. 4 dan seterusnya, kumpulan karakter yang tidak dapat dikenali akan diabaikan oleh UTF-8 sebagai gantinya
double_encodeOpsional. Nilai Boolean yang menentukan enkode entitas HTML apa yang tersedia- BENAR - standar. Ini akan mengonversi setiap entitas
- SALAH - tidak berpengaruh pada entitas yang disandikan HTML yang ada
rincian teknis
Pengembalian. Mengembalikan string yang dikonversiJika string berisi kode yang tidak valid, string kosong dikembalikan, kecuali untuk flag ENT_IGNORE atau ENT_SUBSTITUTE
versi PHP. 4+ Pembaruan log. Di PHP 5, nilai default dari parameter set karakter adalah untuk UTF-8Di PHP5. 4, dan menambahkan. ENT_SUBSTITUTE, ENT_DISALLOWED, ENT_HTML401, ENT_HTML5, ENT_XML1 dan ENT_XHTML