Συνάρτηση fprintf
Η συνάρτηση fprintf μορφοποιεί μια συμβολοσειρά σύμφωνα με το καθορισμένο πρότυπο και γράφει το αποτέλεσμα σε μια αρχειακή ροή. Ως πρώτη παράμετρο δέχεται έναν αρχειακό πόρο, ως δεύτερη - μια συμβολοσειρά μορφοποίησης, και οι επόμενες παράμετροι - τιμές για αντικατάσταση στο πρότυπο. Εάν μεταβιβάσετε null αντί για αρχειακό πόρο, η συνάρτηση θα επιστρέψει συμβολοσειρά αντί να γράψει στη ροή.
Στη συμβολοσειρά μορφοποίησης χρησιμοποιούνται ειδικοί χαρακτήρες (προσδιοριστές μορφής), που ξεκινούν με το σύμβολο % και ελέγχουν τη μορφοποίηση της εξόδου.
Σύνταξη
fprintf(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
$file = fopen('output.txt', 'w');
fprintf($file, "Name: %s, Age: %d", "John", 25);
fclose($file);
?>
Περιεχόμενα του αρχείου output.txt:
'Name: John, Age: 25'
Παράδειγμα
Χρήση διαφορετικών προσδιοριστών μορφής:
<?php
$res = fopen('php://temp', 'w');
fprintf($res, "Float: %.2f, Hex: %x", 12.3456, 255);
rewind($res);
echo stream_get_contents($res);
fclose($res);
?>
Αποτέλεσμα εκτέλεσης κώδικα:
'Float: 12.35, Hex: ff'
Παράδειγμα
Επιστροφή συμβολοσειράς αντί εγγραφής σε αρχείο:
<?php
$result = sprintf("Today is %s", date('Y-m-d'));
echo $result;
?>
Αποτέλεσμα εκτέλεσης κώδικα:
'Today is 2023-11-15'
Δείτε επίσης
-
τη συνάρτηση
sprintf,
που επιστρέφει μια μορφοποιημένη συμβολοσειρά -
τη συνάρτηση
vprintf,
που εμφανίζει μια μορφοποιημένη συμβολοσειρά -
τη συνάρτηση
file_put_contents,
που γράφει δεδομένα σε αρχείο