Penggunaan fungsi EXORESSIONS pada PHP

Fungsipreg_replace() digunakan untuk dapat mengembalikan string atau array string di mana semua kecocokan pola atau daftar pola yang ditemukan dalam masukan diganti dengan substring.

Ada tiga cara berbeda untuk menggunakan fungsi ini:

  1. Satu pola dan satu pengganti. Kecocokan pola diganti dengan string pengganti.
  2. Sebuah array pola dan string pengganti. Kecocokan salah satu pola diganti dengan string pengganti.
  3. Sebuah array pola dan array string pengganti. Kecocokan dari setiap pola diganti dengan string pengganti di posisi yang sama dalam array pengganti. Jika tidak ada item yang ditemukan pada posisi itu, kcocokan itu akan diganti dengan string kosong.

String pengganti mungkin berisi latar referensi dalam bentuk \n atau $n di mana n adalah indeks grup dalam pola. Dalam string yang dikembalikan, instance \n dan $n akan diganti dengan substring yang cocok dengan grup atau jika \0 atau $0 akan digunakan oleh seluruh ekspresi.

Catatan: Untuk setiap string masukan, fungsi mengevaluasi pola dalam urutan yang diberikan. Hasil evaluasi pola pertama pada string digunakan sebagai input string untuk pola kedua dan seterusnya. Ini dapat menyebabkan perilaku yang tidak terduga.

Section Artikel

Definisi dan Penggunaan

Fungsi preg_match() digunakan untuk dapat mengembalikan apakah kecocokan ditemukan dalam string.

Syntax

preg_match(pattern, input, matches, flags, offset)

Nilai Parameter

ParameterDeskripsipatternRequired. Berisi ekspresi reguler yang menunjukkan apa yang harus dicariinputRequired. String tempat pencarian akan dilakukanmatchesOptional. Variabel yang digunakan dalam parameter ini akan diisi dengan array yang berisi semua kecocokan yang ditemukanflagsOptional. Serangkaian opsi yang mengubah cara susunan array terstruktur:

PREG_OFFSET_CAPTURE – Jika opsi ini diaktifkan, setiap kecocokan, daripada menjadi string, maka akan menjadi array di mana elemen pertama adalah substring yang berisi kecocokan dan elemen kedua adalah posisi karakter pertama substring di input.

PREG_UNMATCHED_AS_NULL – Jika opsi ini diaktifkan, subpola yang tidak cocok akan dikembalikan sebagai NULL, bukan sebagai string kosong.offsetOptional. Default-nya 0. Menunjukkan seberapa jauh ke dalam string untuk mulai mencari.
Fungsi preg_match() tidak akan menemukan kecocokan yang terjadi sebelum posisi yang diberikan dalam parameter ini

Detail Teknis

Return Value:Mengembalikan 1 jika kecocokan ditemukan, 0 jika tidak ada kecocokan yang ditemukan dan false jika terjadi kesalahanPHP Version:4+Changelog:PHP 7.2 – Menambahkan tanda PREG_UNMATCHED_AS_NULL

PHP 5.3.6 – Fungsi mengembalikan nilai false ketika offset lebih panjang dari panjang input

PHP 5.2.2 – Subpattern bernama dapat menggunakan sintaks (?’name’) dan (? <name> ) selain sintaks sebelumnya (?P<name> )

Contoh 1
Gunakan ekspresi reguler untuk melakukan penelusuran tidak peka huruf besar kecil(case-sensitive) untuk “dosenit” dalam sebuah string:

<?php $str = "Visit DosenIT"; $pattern = "/dosenit/i"; echo preg_match($pattern, $str); ?> // Output : 1

Contoh 2
Gunakan PREG_OFFSET_CAPTURE untuk menemukan posisi dalam string masukan di mana kecocokan ditemukan:

<?php $str = "Selamat Datang di DosenIT"; $pattern = "/dosenit/i"; preg_match($pattern, $str, $matches, PREG_OFFSET_CAPTURE); print_r($matches); ?> // Output : Array ( [0] => Array ( [0] => DosenIT [1] => 19 ) )

phpregular expression

Dalam pembuatan program, ada saatnya kita butuh suatu percabangan, yakni jika sebuah kondisi terpenuhi, jalankan kode program ini, jika tidak jalankan kode program yang lain. Untuk membuatnya, diperlukan percabangan kondisi if.

Melanjutkan tutorial belajar PHP di Duniailkom ini, kita akan masuk ke materi tentang pengertian dan cara penulisan struktur IF dalam PHP.

Pengertian Struktur If Bahasa PHP

Struktur IF adalah sebuah struktur logika untuk membuat percabangan alur program. Dengan menggunakan struktur if, kita dapat mengatur sebuah perintah akan dijalankan atau tidak tergantung kepada kondisinya.

Sebagai contoh, jika nama user adalah <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>0, maka tampilkan kata <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>1. Berikut penulisannya di PHP:

<?php $nama="Andi"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>

Saat kode diatas dijalankan, di web browser akan tampil <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>2, namun apabila kita mengganti kode program diatas menjadi:

<?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>

Maka tidak ada tampilan apa-apa di dalam web browser.

Struktur logika IF setidaknya butuh 2 input, yaitu ekspresi logika (expression) sebagai tempat untuk membuat kondisi yang harus dipenuhi, dan perintah yang akan dijalankan (statement) jika kondisi logika tersebut terpenuhi.

Berikut struktur dasar penulisan alur logika IF di bahasa PHP:

if (expression) statement

Expression adalah kondisi yang harus dipenuhi agar statement dapat berjalan. Hasil dari expression harus tipe boolean atau kode lain yang menghasilkan nilai boolean. Selama expression bernilai true, maka statement akan dijalankan, namun jika nilainya false, statement tidak akan berjalan.

Ketika membuat kode program, biasanya kita memakai operasi perbandingan sebagai expression. Namun itu tidak harus, bisa juga berbentuk variabel yang menghasilkan nilai boolean. Perhatikan contoh berikut ini:

<?php if (TRUE) echo "Selamat datang Andi, di duniailkom..."; ?>

Saat dijalankan, kalimat <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>2 akan selalu tampil di web browser, karena kondisi IF akan selalu terpenuhi.

Bahasa pemrograman PHP juga memiliki fitur yang dikenal dengan istilah type juggling, yakni kondisi dimana sebuah tipe data akan dikonversi tergantung situasinya. Dengan fitur ini, expression untuk percabangan kondisi IF juga bisa di isi dengan tipe data selain boolean. Berikut contohnya:

<?php if (9) echo "Selamat datang Andi, di duniailkom..."; ?>

Perintah echo akan dijalankan karena angka integer 9 akan dikonversi menjadi boolean true. Lebih lanjut tentang konversi tipe data ini telah kita bahas pada Cara Mengubah Tipe Data PHP (Type Juggling dan Type Casting)

Aturan Penulisan Struktur If Bahasa PHP

Penulisan sederhana dari struktur if dalam bahasa pemrograman PHP adalah sebagai berikut:

<?php if (expression) statement; ?>

Expression ditulis di dalam tanda kurung dan tidak diikuti dengan titik koma(;).

Apabila statement yang ingin dijalankan terdiri dari 2 baris atau lebih, kita harus memberikan tanda kurung kurawal untuk menandai statement yang berhubungan dengan kondisi IF:

<?php if (expression) { statement1; statement1; } ?>

Tanda kurung kurawal menandakan blok perintah yang dijalankan jika expression bernilai true.

Kita juga bisa membuat beberapa logika IF sekaligus untuk berbagai situasi:

<?php if (expression1) { statement1; statement2; } if (expression2) { statement3; statement4; } ?>

Untuk kasus yang lebih spesifik, juga bisa membuat struktur IF di dalam IF atau dikenal dengan nested IF:

<?php if (expression) { statement1; if (expression) { statement1; } } ?>

Bahasa PHP tidak membatasi berapa banyak kondisi IF di dalam IF boleh ditulis. Namun saat membuat struktur IF yang kompleks, tanda kurung kurawal harus selalu diperhatikan karena sering membuat bingung jika tidak dikelola dengan benar. Kesalahan penutupan kurung kurawal akan membuat program tidak berjalan sesuai keinginan kita.

Alternatif Penulisan Struktur Logika If

Selain memakai tanda kurung kurawal sebagai tanda awal dan akhir IF, PHP menyediakan cara penulisan alternatif untuk menandai akhir perintah IF, yaitu diawali dengan tanda titik dua (:) dengan diakhiri dengan perintah <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>4.

Berikut adalah format dasar penulisan IF:

<?php if (expression) : statement1; statement1; endif ?>

Perbedaan mendasar cara penulisan ini ada di tanda titik dua (:) setelah penulisan expression, serta kata kunci <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>4 di akhir statement.

Kita bebas menggunakan format penulisan logika IF yang disediakan. Beberapa programmer menggunakan alternatif penulisan IF dengan <?php $nama="Joni"; if ($nama=="Andi") echo "Selamat datang Andi, di duniailkom..."; ?>4 karena dianggap lebih rapi.

Struktur logika IF di PHP juga memiliki percabangan kedua seandainya kondisi expression tidak terpenuhi. Dalam tutorial PHP selanjutnya kita akan mempelajari struktur logika IF – ELSE.

Saat ini di Duniailkom tersedia eBook / buku PHP Uncover dan OOP PHP Uncover. Materi di kedua buku ini jauh lebih detail daripada tutorial PHP di web Duniailkom. Penjelasan lebih lanjut bisa ke: PHP Uncover dan OOP PHP Uncover.

Postingan terbaru

LIHAT SEMUA