Fungsi sscanf() PHP

Contoh

Mengurai string:

<?php
$str = "age:30 weight:60kg";
sscanf($str,"age:%d weight:%dkg",$age,$weight);
// Menampilkan tipe dan nilai
var_dump($age,$weight);
?>

Contoh Penggunaan

Definisi dan penggunaan

Fungsi sscanf() mengurai input dari string yang ditentukan. Fungsi sscanf() mengurai string berdasarkan string format.

Jika hanya mengirimkan dua parameter, data akan kembali dalam bentuk array. Jika mengirimkan parameter ekstra, data yang diurai akan disimpan di parameter ini. Jika jumlah tanda pemisah lebih banyak daripada jumlah variabel yang mengandungnya, terjadi kesalahan. Namun, jika jumlah tanda pemisah lebih sedikit daripada jumlah variabel yang mengandungnya, variabel ekstra akan mengandung NULL.

Fungsi yang relevan:

  • printf() - Menampilkan string yang sudah diformat
  • sprintf() - Menuliskan string yang sudah diformat ke dalam variabel

Syarat

sscanf(string,format,arg1,arg2,arg++)
Parameter Deskripsi
string Diperlukan. Menentukan string yang akan diambil.
format

Diperlukan. Menentukan format yang akan digunakan.

Nilai format yang mungkin:

  • %% - Mengembalikan persen %
  • %c - Karakter yang dihubungkan dengan nilai ASCII
  • %d - Bilangan desimal dengan tanda (+) atau (-) (negatif, 0, positif)
  • %e - Bilangan ilmiah dalam huruf kecil (contoh 1.2e+2)
  • 蒛ilangan desimal tanpa tanda (+) (lebih besar atau sama dengan 0)
  • %f - Bilangan pecahan
  • %o - Bilangan oktal
  • %s - String
  • %x - Bilangan heksadesimal (huruf kecil)
  • %X - Bilangan heksadesimal (huruf besar)

Nilai format ekstra. Harus ditempatkan di antara % dan huruf (contoh: %.2f)

  • + (menambahkan + atau - di depan angka untuk menentukan arah positif atau negatif angka. Secara standar, hanya angka negatif yang dijadikan tanda, angka positif tidak dijadikan tanda)
  • ' (menentukan apa yang digunakan sebagai pengisi, standar adalah spasi. Ini harus digunakan bersamaan dengan penentu lebar)
  • - (menyambung nilai variabel ke kiri)
  • .[0-9] (menentukan lebar minimum nilai variabel)
  • .[0-9] (menentukan jumlah desimal atau panjang maksimal string)

Komentar:Jika digunakan beberapa nilai format di atas, mereka harus digunakan berurutan seperti di atas.

arg1 Pilihan. Simpan variabel pertama data.
arg2 Pilihan. Simpan variabel kedua data.
arg++ Pilihan. Simpan variabel ketiga dan keempat data, dan seterusnya.

Detil Teknis

Nilai Kembalian: Jika hanya mengirimkan dua parameter ke fungsi ini, data akan kembalikan dalam bentuk array. Jika ada parameter ekstra yang dikirimkan, data yang diurai akan disimpan di parameter parameter ini. Jika jumlah pemisah lebih besar daripada jumlah variabel yang mengandungnya, akan terjadi kesalahan. Namun, jika jumlah pemisah lebih kecil daripada jumlah variabel yang mengandungnya, variabel ekstra berisi NULL.
Versi PHP: 4.0.1+

Contoh Lebih Banyak

Contoh 1

Gunakan nilai format %s, %d, dan %c:

<?php
$str = "Jika Anda membagi 4 dengan 2 Anda akan mendapatkan 2";
$format = sscanf($str,"%s %s %s %d %s %d %s %s %c");
print_r($format);
?>

Contoh Penggunaan