fscanf

(PHP 4 >= 4.0.1, PHP 5, PHP 7, PHP 8)

fscanfBir dosyadaki girdiyi belli bir biçeme göre çözümler

Açıklama

fscanf(resource $dt, string $biçem, mixed &...$değerler): array|int|false|null

fscanf() işlevi, girdisini dt ile ilişkili bir dosyadan alması ve bu girdiyi belirtilen biçem'e göre yorumlaması dışında sscanf() işlevine benzer.

Biçem dizgesindeki boşluk karakterleri girdi akımındaki boşluk karakterleri ile eşleşir. Yani, biçem dizgesindeki bir sekme karakteri (\t) girdi dizgesindeki tek bir boşluk karakteri (" ") ile eşleşebilir.

Her fscanf() çağrısı dosyadan tek bir satır okur.

Bağımsız Değişkenler

dt

Bir dosya tanıtıcısı. Genellikle fopen() kullanılarak oluşturulur.

biçem

Girdi dizgesinin yorumlanmasında kullanılan bu dizge ile ilgili ayrıntılar aşağıdaki farklar dışında sprintf() işlevinin belgesinde açıklanmıştır:

  • İşlev yerele duyarlı değildir.
  • F, g, G and b desteklenmez.
  • D ondalık sayı anlamına gelir.
  • i taban algılamalı tamsayı anlamına gelir.
  • n şimdiye kadar işlenen karakter sayısı anlamına gelir.
  • s herhangi bir boşluk karakterinde okumayı durdurur.
  • dğşnum$ yerine * bu dönüştürme belirtiminin atamasını baskılar.

değerler

İsteğe bağlı atanmış değerler.

Dönen Değerler

Bu işleve sadece iki bağımsız değişken aktarılırsa çözümlenen değerler bir dizi olarak döndürülür. Aksi takdirde, eğer isteğe bağlı bağımsız değişkenler aktarılırsa işlev atanan değerlerin sayısı ile döner. İsteğe bağlı değerler gönderimli aktarılmalıdır.

biçem dizgesi içinde gerekenden daha fazla alt dizge mevcutsa işlev null döner. Diğer hata durumlarında false döner.

Örnekler

Örnek 1 - fscanf() örneği

<?php
$dt
= fopen("kişiler.txt", "r");
while (
$kişiselveri = fscanf($dt, "%s\t%s\t%s\n")) {
list (
$isim, $meslek, $ülkekodu) = $kişiselveri;
//... değerlerle yapılan işlemler
}
fclose($dt);
?>

Örnek 2 - kişiler.txt içeriği

avni      avanak        tr
varyemez  işadamı       us
tenten    gezgin        fr
zagor     kahraman      ca

Ayrıca Bakınız

  • fread() - Dosyayı ikil kipte okur
  • fgets() - Dosya tanıtıcısından bir satır döndürür
  • fgetss() - Dosya tanıtıcısından bir satırı HTML etiketlerinden arındırarak döndürür
  • sscanf() - Girdi dizgesini belli bir biçeme göre yorumlar
  • printf() - Biçemli bir dizge çıktılar
  • sprintf() - Biçemli bir dizge döndürür