Heim > Backend-Entwicklung > PHP-Tutorial > PHPs Funktion fprintf(), die einen String formatiert und ihn in den angegebenen Ausgabestream schreibt

PHPs Funktion fprintf(), die einen String formatiert und ihn in den angegebenen Ausgabestream schreibt

黄舟
Freigeben: 2023-03-16 21:58:01
Original
1861 Leute haben es durchsucht

Beispiel

Schreiben Sie Text in eine Textdatei mit dem Namen „test.txt“:

<?php
$number = 9;
$str = "Beijing";
$file = fopen("test.txt","w");
echo fprintf($file,"There are %u million bicycles in %s.",$number,$str);
?>
Nach dem Login kopieren

Der obige Code gibt Folgendes aus:

40
Nach dem Login kopieren

Das Folgende Text wird in die Datei „test.txt“ geschrieben:

There are 9 million bicycles in Beijing.
Nach dem Login kopieren

Definition und Verwendung

Die Funktion fprintf() konvertiert den formatierten String und schreibt ihn in die angegebene Ausgabe Stream (zum Beispiel: Datei oder Datenbank).

Arg1-, arg2- und ++-Parameter werden am Prozentzeichensymbol (%) in die Hauptzeichenfolge eingefügt. Diese Funktion wird Schritt für Schritt ausgeführt. Fügen Sie beim ersten %-Zeichen arg1 ein, beim zweiten %-Zeichen arg2 und so weiter.

Hinweis: Wenn mehr %-Symbole als arg-Argumente vorhanden sind, müssen Sie Platzhalter verwenden. Der Platzhalter wird nach dem %-Symbol eingefügt und besteht aus einer Zahl gefolgt von „$“. Siehe Beispiel 2.

Tipp: Verwandte Funktionen: printf(), sprintf(), vprintf(), vsprintf() und vfprintf()

Grammatik Gibt an, wo Zeichenfolgen geschrieben/ausgegeben werden.  

fprintf(stream,format,arg1,arg2,arg++)
Nach dem Login kopieren
Format                                                                                                                                                           Erforderlich. Gibt eine Zeichenfolge und die Formatierung der darin enthaltenen Variablen an.

<的> Möglicher Formatwert: %% – Gibt eine Prozentzahl zurück%

%B – Binärzahl

%C – ASCII-Wert >                                                                                                                                                       1.2e+2)

.                                                                                              Wissenschaftlich Zählmethode mit Großbuchstaben (z. B. 1.2e+2)

%u – Dezimalzahl ohne positive Zahlen (größer oder gleich 0)

%f – Gleitkommazahl (lokale Einstellungen)

%f -Gleitkommazahl (nicht lokale Einstellungen)

%g -shorter%e und%f

%g -shorter%e und%f

                                                                                                                                                                                                             

%s - 字符串

%x - 十六进制数(小写字母)

%X - 十六进制数(大写字母)

附加的格式值。必需放置在 % 和字母之间(例如 %.2f):

+ (在数字前面加上 + 或 - 来定义数字的正负性。默认情况下,只有负数才做标记,正数不做标记)

' (规定使用什么作为填充,默认是空格。它必须与宽度指定器一起使用。例如:%'x20s(使用 "x" 作为填充))

- (左调整变量值)

[0-9] (规定变量值的最小宽度)

.[0-9] (规定小数位数或最大字符串长度)

注释:如果使用多个上述的格式值,它们必须按照上面的顺序进行使用,不能打乱。

arg1 必需。规定插到 format 字符串中第一个 % 符号处的参数。

arg2 可选。规定插到 format 字符串中第二个 % 符号处的参数。

arg++ 可选。规定插到 format 字符串中第三、四等等 % 符号处的参数。

技术细节

返回值: 返回被写字符串的长度。

PHP 版本: 5+

更多实例

把一些文件写入到文件中

<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"%f",$number);
?>
Nach dem Login kopieren

下面的文本将被写入到文件 "test.txt":

123.000000
Nach dem Login kopieren

实例 2

使用占位符:

<?php
$number = 123;
$file = fopen("test.txt","w");
fprintf($file,"With 2 decimals: %1$.2f
nWith no decimals: %1$u",$number);
?>
Nach dem Login kopieren

下面的文本将被写入到文件 "test.txt":

With 2 decimals: 123.00
With no decimals: 123
Nach dem Login kopieren

实例 3

使用 printf() 来演示所有可能的格式值:

<?php
$num1 = 123456789;
$num2 = -123456789;
$char = 50; // The ASCII Character 50 is 2

// Note: The format value "%%" returns a percent sign
printf("%%b = %b <br>",$num1); // Binary number
printf("%%c = %c <br>",$char); // The ASCII Character
printf("%%d = %d <br>",$num1); // Signed decimal number
printf("%%d = %d <br>",$num2); // Signed decimal number
printf("%%e = %e <br>",$num1); // Scientific notation (lowercase)
printf("%%E = %E <br>",$num1); // Scientific notation (uppercase)
printf("%%u = %u <br>",$num1); // Unsigned decimal number (positive)
printf("%%u = %u <br>",$num2); // Unsigned decimal number (negative)
printf("%%f = %f <br>",$num1); // Floating-point number (local settings aware)
printf("%%F = %F <br>",$num1); // Floating-point number (not local settings aware)
printf("%%g = %g <br>",$num1); // Shorter of %e and %f
printf("%%G = %G <br>",$num1); // Shorter of %E and %f
printf("%%o = %o <br>",$num1); // Octal number
printf("%%s = %s <br>",$num1); // String
printf("%%x = %x <br>",$num1); // Hexadecimal number (lowercase)
printf("%%X = %X <br>",$num1); // Hexadecimal number (uppercase)
printf("%%+d = %+d <br>",$num1); // Sign specifier (positive)
printf("%%+d = %+d <br>",$num2); // Sign specifier (negative)
?>
Nach dem Login kopieren

使用格式值 %f:

<?php 
$number = 123; 
printf("%f",$number); 
?>
Nach dem Login kopieren

字符串说明符的演示:

<?php
$str1 = "Hello";
$str2 = "Hello world!";
 
printf("[%s]<br>",$str1);
printf("[%8s]<br>",$str1);
printf("[%-8s]<br>",$str1);
printf("[%08s]<br>",$str1);
printf("[%&#39;*8s]<br>",$str1);
printf("[%8.8s]<br>",$str2);
?>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonPHPs Funktion fprintf(), die einen String formatiert und ihn in den angegebenen Ausgabestream schreibt. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage