Συνάρτηση fprintf

Η συνάρτηση fprintf μορφοποιεί μια συμβολοσειρά σύμφωνα με το καθορισμένο πρότυπο και γράφει το αποτέλεσμα σε μια αρχειακή ροή. Ως πρώτη παράμετρο δέχεται έναν αρχειακό πόρο, ως δεύτερη - μια συμβολοσειρά μορφοποίησης, και οι επόμενες παράμετροι - τιμές για αντικατάσταση στο πρότυπο. Εάν μεταβιβάσετε null αντί για αρχειακό πόρο, η συνάρτηση θα επιστρέψει συμβολοσειρά αντί να γράψει στη ροή.

Στη συμβολοσειρά μορφοποίησης χρησιμοποιούνται ειδικοί χαρακτήρες (προσδιοριστές μορφής), που ξεκινούν με το σύμβολο % και ελέγχουν τη μορφοποίηση της εξόδου.

Σύνταξη

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

Προσδιοριστές μορφής

Προσδιοριστής Περιγραφή
%s Συμβολοσειρά
%d Ακέραιος αριθμός με πρόσημο (δεκαδικός)
%u Ακέραιος αριθμός χωρίς πρόσημο (δεκαδικός)
%f Αριθμός κινητής υποδιαστολής (εξαρτώμενος από τοπικές ρυθμίσεις)
%F Αριθμός κινητής υποδιαστολής (μη εξαρτώμενος από τοπικές ρυθμίσεις)
%c Χαρακτήρας σύμφωνα με κωδικό ASCII
%x Ακέραιος αριθμός σε δεκαεξαδικό σύστημα (πεζά γράμματα)
%X Ακέραιος αριθμός σε δεκαεξαδικό σύστημα (κεφαλαία γράμματα)
%o Ακέραιος αριθμός σε οκταδικό σύστημα
%b Ακέραιος αριθμός σε δυαδικό σύστημα
%e Επιστημονική σημειογραφία (πεζά γράμματα)
%E Επιστημονική σημειογραφία (κεφαλαία γράμματα)
%g Σύντομη μορφή %e ή %f
%G Σύντομη μορφή %E ή %F
%% Σύμβολο ποσοστού

Παράδειγμα

Εγγραφή μορφοποιημένης συμβολοσειράς σε αρχείο:

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

Περιεχόμενα του αρχείου output.txt:

php'Name: John, Age: 25'

Παράδειγμα

Χρήση διαφορετικών προσδιοριστών μορφής:

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);
?>

Αποτέλεσμα εκτέλεσης κώδικα:

php'Float: 12.35, Hex: ff'

Παράδειγμα

Επιστροφή συμβολοσειράς αντί εγγραφής σε αρχείο:

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

Αποτέλεσμα εκτέλεσης κώδικα:

php'Today is 2023-11-15'

Δείτε επίσης

  • τη συνάρτηση sprintf,
    που επιστρέφει μια μορφοποιημένη συμβολοσειρά
  • τη συνάρτηση vprintf,
    που εμφανίζει μια μορφοποιημένη συμβολοσειρά
  • τη συνάρτηση file_put_contents,
    που γράφει δεδομένα σε αρχείο