sscanf Fonksiyonu
sscanf işlevi, bir dizeyi belirtilen biçimi kullanarak analiz eder
ve değerleri döndürür. İşlev ilk parametre olarak analiz edilecek dizeyi alır,
ikinci parametre olarak biçim dizesini alır ve sonraki parametreler (isteğe bağlı) -
ayrıştırma sonuçlarının yazılacağı değişkenlerdir.
Biçim dizesinde, % işaretiyle başlayan ve çıktı biçimlendirmesini yöneten
özel karakterler (biçim belirteçleri) kullanılır.
Sözdizimi
sscanf(string $str, string $format [, mixed &$... ]): mixed
Biçim Belirteçleri
| Belirteç | Açıklama |
|---|---|
%s |
Dize |
%d |
İşaretli tamsayı (ondalık) |
%u |
İşaretsiz tamsayı (ondalık) |
%f |
Kayan noktalı sayı (yerel ayara bağlı) |
%F |
Kayan noktalı sayı (yerel ayara bağlı değil) |
%c |
ASCII koduyla karakter |
%x |
Onaltılık sistemde tamsayı (küçük harf) |
%X |
Onaltılık sistemde tamsayı (büyük harf) |
%o |
Sekizlik sistemde tamsayı |
%b |
İkili sistemde tamsayı |
%e |
Bilimsel gösterim (küçük harf) |
%E |
Bilimsel gösterim (büyük harf) |
%g |
%e veya %f'nin kısa yazımı |
%G |
%E veya %F'nin kısa yazımı |
%% |
Yüzde işareti |
Örnek
Bir dizeyi sayı ve metin çıkararak ayrıştıralım:
<?php
$res = sscanf("42 is the answer", "%d is %s");
print_r($res);
?>
Kodun çalıştırılmasının sonucu:
[42, 'the']
Örnek
Tarihi bileşenlerine ayıralım:
<?php
$date = "2023-12-31";
list($year, $month, $day) = sscanf($date, "%d-%d-%d");
echo "Year: $year, Month: $month, Day: $day";
?>
Kodun çalıştırılmasının sonucu:
'Year: 2023, Month: 12, Day: 31'