Funktio fprintf

Funktio fprintf muotoilee merkkijonon määritetyn mallin mukaisesti ja kirjoittaa tuloksen tiedostovirtaan. Se ottaa ensimmäisenä parametrina tiedostoresurssin, toisena muotoilumerkkijonon ja seuraavina parametreina arvot, jotka sijoitetaan malliin. Jos välität null tiedostoresursin sijasta, funktio palauttaa merkkijonon kirjoittamisen sijasta.

Muotoilumerkkijonossa käytetään erikoismerkkejä (muotoilumäärittelijöitä), jotka alkavat merkillä % ja ohjaavat tulosteen muotoilua.

Syntaksi

phpfprintf(resource $handle, string $format, mixed ...$values): int|false

Muotoilumäärittelijät

Määrittelijä Kuvaus
%s Merkkijono
%d Etumerkillinen kokonaisluku (desimaalinen)
%u Etumerkitön kokonaisluku (desimaalinen)
%f Liukuluku (maantieteellisesti riippuvainen)
%F Liukuluku (ei maantieteellisesti riippuvainen)
%c Merkki ASCII-koodin mukaan
%x Kokonaisluku heksadesimaalijärjestelmässä (pieni kirjain)
%X Kokonaisluku heksadesimaalijärjestelmässä (iso kirjain)
%o Kokonaisluku oktaalijärjestelmässä
%b Kokonaisluku binäärijärjestelmässä
%e Tieteellinen merkintätapa (pieni kirjain)
%E Tieteellinen merkintätapa (iso kirjain)
%g Lyhyt muoto %e tai %f
%G Lyhyt muoto %E tai %F
%% Prosenttimerkki

Esimerkki

Muotoillun merkkijonon kirjoittaminen tiedostoon:

php<?php
  $file = fopen('output.txt', 'w');
  fprintf($file, "Name: %s, Age: %d", "John", 25);
  fclose($file);
?>

Tiedoston output.txt sisältö:

php'Name: John, Age: 25'

Esimerkki

Eri muotoilumäärittelijöiden käyttö:

php<?php
  $res = fopen('php://temp', 'w');
  fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
  rewind($res);
  echo stream_get_contents($res);
  fclose($res);
?>

Koodin suorituksen tulos:

php'Float: 12.35, Hex: ff'

Esimerkki

Merkkijonon palauttaminen tiedostoon kirjoittamisen sijasta:

php<?php
  $result = sprintf("Today is %s", date('Y-m-d'));
  echo $result;
?>

Koodin suorituksen tulos:

php'Today is 2023-11-15'

Katso myös

  • funktion sprintf,
    joka palauttaa muotoillun merkkijonon
  • funktion vprintf,
    joka tulostaa muotoillun merkkijonon
  • funktion file_put_contents,
    joka kirjoittaa dataa tiedostoon