Tulis beberapa teks ke file teks bernama "test.txt":
<?php$number = 9;$str = "Beijing";$file = fopen("test.txt","w");echo fprintf($file,"Ada %u juta sepeda di %s.", $angka,$str);?>Kode di atas akan menampilkan:
40Teks berikut akan ditulis ke file "test.txt":
Ada 9 juta sepeda di Beijing.Fungsi fprintf() menulis string yang diformat ke aliran keluaran yang ditentukan (seperti file atau database).
Parameter arg1, arg2, ++ akan dimasukkan ke dalam string utama pada simbol tanda persen (%). Fungsi ini dijalankan selangkah demi selangkah. Pada tanda % pertama masukkan arg1, pada tanda % kedua masukkan arg2, dan seterusnya.
Catatan: Jika ada lebih banyak simbol % daripada parameter arg, Anda harus menggunakan placeholder. Placeholder disisipkan setelah simbol % dan terdiri dari angka dan "$". Lihat Contoh 2.
Tip: Fungsi terkait: printf(), sprintf(), vprintf(), vsprintf(), dan vfprintf()
fprintf( aliran,format,arg1,arg2,arg++ )
parameter | menggambarkan |
---|---|
sungai kecil | Diperlukan. Menentukan di mana string ditulis/dikeluarkan. |
format | Diperlukan. Menentukan string dan cara memformat variabel di dalamnya. Nilai format yang mungkin: %% - mengembalikan tanda persen % %b - bilangan biner %c - karakter yang sesuai dengan nilai ASCII %d - angka desimal dengan tanda (negatif, 0, positif) %e - Gunakan notasi ilmiah huruf kecil (misalnya 1.2e+2) %E - Gunakan notasi ilmiah huruf besar (misalnya 1.2E+2) %u - Angka desimal tanpa tanda (lebih besar atau sama dengan 0) %f - angka floating point (pengaturan lokal) %F - angka floating point (pengaturan non-asli) %g - versi pendek dari %e dan %f %G - lebih pendek %E dan %f %o - bilangan oktal %s - rangkaian %x - Angka heksadesimal (huruf kecil) %X - angka heksadesimal (huruf besar) Nilai format tambahan. Harus ditempatkan di antara % dan huruf (misalnya %.2f): + (Tambahkan + atau - di depan angka untuk menentukan tanda angka. Secara default, hanya angka negatif yang ditandai, dan angka positif tidak ditandai) ' (Menentukan apa yang akan digunakan sebagai padding, defaultnya adalah spasi. Ini harus digunakan dengan penentu lebar. Misalnya: %'x20s (gunakan "x" sebagai padding)) - (nilai variabel penyesuaian kiri) [0-9] (menentukan lebar minimum nilai variabel) .[0-9] (menentukan jumlah tempat desimal atau panjang string maksimum) Catatan: Jika beberapa nilai format di atas digunakan, maka nilai tersebut harus digunakan sesuai urutan di atas dan tidak boleh diganggu. |
arg1 | Diperlukan. Menentukan parameter yang akan dimasukkan pada tanda % pertama dalam string format. |
arg2 | Opsional. Menentukan parameter yang akan dimasukkan ke dalam string format pada tanda % kedua. |
argumen++ | Opsional. Menentukan parameter yang akan dimasukkan ke dalam string format pada simbol % ketiga, keempat, dst. |
Nilai pengembalian: | Mengembalikan panjang string yang sedang ditulis. |
---|---|
Versi PHP: | 5+ |
Tulis beberapa teks ke file:
<?php$angka = 123;$file = fopen("test.txt","w");fprintf($file,"%f",$angka);?>Teks berikut akan ditulis ke file "test.txt":
123.000000Gunakan placeholder:
<?php$number = 123;$file = fopen("test.txt","w");fprintf($file,"Dengan 2 desimal: %1$.2fnTanpa desimal: %1$u",$number );?>Teks berikut akan ditulis ke file "test.txt":
Dengan 2 desimal: 123.00Tanpa desimal: 123Gunakan printf() untuk mendemonstrasikan semua kemungkinan nilai format:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // Karakter ASCII 50 adalah 2// Catatan: Nilai format "%%" mengembalikan persen signprintf("%%b = %b <br>",$num1); // Nomor binerprintf("%%c = %c <br>",$char); // ASCII Characterprintf("%%d = %d <br>",$num1); // Angka desimal bertandaprintf("%%d = %d <br>",$num2); = %e <br>",$num1); // Notasi ilmiah (huruf kecil)printf("%%E = %E <br>",$num1); // Notasi ilmiah (huruf besar)printf("%%u = %u <br>",$num1); // Bilangan desimal tidak bertanda (positif)printf("%%u = %u <br>",$num2); bilangan desimal (negatif)printf("%%f = %f <br>",$num1); // Bilangan titik-mengambang (pengaturan lokal diketahui)printf("%%F = %F <br>",$num1); // Angka floating-point (tidak mengetahui pengaturan lokal)printf("%%g = %g <br>",$num1); // Lebih pendek dari %e dan %fprintf(" %%G = %G <br>",$num1); // Lebih pendek dari %E dan %fprintf("%%o = %o <br>",$num1); // Bilangan oktalprintf("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // Bilangan heksadesimal (huruf kecil)printf("%%X = %X <br >",$angka1); // Bilangan heksadesimal (huruf besar)printf("%%+d = %+d <br>",$angka1); // Penentu tanda (positif)printf("%%+d = %+d <br>",$num2); // Penentu tanda (negatif)?>