ฟังก์ชัน fprintf() ของ PHP
ตัวอย่าง
เขียนข้อความลงในไฟล์ข้อความชื่อ "test.txt":
<?php $number = 9; $str = "Beijing"; $file = fopen("test.txt","w"); echo fprintf($file,"There are 쥕lion bicycles in %s.",$number,$str); ?>
ออกที่เป็นผลของรหัสความ:
40
ข้อความดังนี้จะถูกเขียนลงในไฟล์ "test.txt":
There are 9 million bicycles in Beijing.
คำหมายและวิธีใช้
ฟังก์ชัน fprintf() จะเขียนข้อความที่ถูกจัดรูปแบบไปยังสายออกที่กำหนด (ตัวอย่าง: ไฟล์หรือฐานข้อมูล)
arg1、arg2、arg++ ตัวแปรจะถูกใส่ลงในสายข้อความหลักที่ตัวอักษร % ที่ทำงานแบบทดลองต่อไป arg1, ใส่ arg2, ตามไปด้วย
หมายเหตุ:หากมีเครื่องหมาย % มากกว่า arg หากมีตัวแปร, คุณจำเป็นต้องใช้ตัวยังที่ % หลังจากเครื่องหมาย % โดยมีตัวเลขและ "\$" รวมกัน ดูตัวอย่าง 2
ฟังก์ชันที่เกี่ยวข้อง:
รูปแบบ
fprintf(stream,format,arg1,arg2,arg++)
ตัวแปร | คำอธิบาย |
---|---|
stream | จำเป็น. กำหนดที่จะเขียน/ออกออกมาของข้อความ |
format |
จำเป็น. กำหนดข้อความและวิธีการจัดรูปแบบตัวแปรที่อยู่ด้วย ค่าฟอร์แมตที่เป็นไปได้:
ค่าฟอร์แมตเพิ่มเติม. จำเป็นต้องจัดวางใน % และตัวอักษรระหว่างเครื่องหมาย % และตัวอักษร (ตัวอย่าง: %.2f):
หมายเหตุ:ถ้าใช้รูปแบบเกินค่าที่กำหนด ต้องใช้ตามลำดับที่กำหนดข้างต้น |
arg1 | จำเป็น. กำหนดให้ใส่ format ตัวเลขที่มี % สัญลักษณ์ที่หนึ่งในข้อความ |
arg2 | เลือกตั้ง. กำหนดให้ใส่ format ตัวเลขที่มี % สัญลักษณ์ที่สองในข้อความ |
arg++ | เลือกตั้ง. กำหนดให้ใส่ format ตัวเลขที่มี % สัญลักษณ์ที่สาม,สี่และอื่นๆ ในข้อความ |
รายละเอียดเทคนิค
ค่าที่ส่งคืน: | ส่งคืนความยาวของข้อความที่เขียนเข้าไป |
PHP รุ่น: | 5+ |
ตัวอย่างเพิ่มเติม
ตัวอย่าง 1
เขียนข้อความเข้าไปในไฟล์:
<?php $number = 123; $file = fopen("test.txt","w"); fprintf($file,"%%f",$number); ?>
ข้อความด้านล่างจะถูกเขียนเข้าไปในไฟล์ "test.txt":
123.000000
ตัวอย่าง 2
ใช้ตัวยื่นที่มีตำแหน่ง:
<?php $number = 123; $file = fopen("test.txt","w"); fprintf($file,"มีเศษสองตำแหน่ง:%1$.2f \nไม่มีเศษ:%1$u",$number); ?>
ข้อความด้านล่างจะถูกเขียนเข้าไปในไฟล์ "test.txt":
มีเศษสองตำแหน่ง: 123.00 ไม่มีเศษ: 123
ตัวอย่าง 3
ใช้ printf() ในการแสดงรูปแบบทั้งหมดที่เป็นไปได้:
<?php $num1 = 123456789; $num2 = -123456789; $char = 50; // จากข้อความอักษร ASCII 50 คือ 2 // หมายเหตุ: รูปแบบ "%%" ส่งคืนเซ็นต์เซ็นท์ printf("%%b = %%b <br>",$num1); // จากข้อความเลขฐานสอง printf("%%c = %%c <br>",$char); // จากข้อความอักษร ASCII printf("%%d = %%d <br>",$num1); // จากข้อความเลขฐานสิบทศน์ (มีสัญลักษณ์) printf("%%d = %%d <br>",$num2); // จากข้อความเลขฐานสิบทศน์ (มีสัญลักษณ์) printf("%%e = %%e <br>",$num1); // จากข้อความคณิตศาสตร์ (เล็ก) printf("%%E = %%E <br>",$num1); // จากข้อความคณิตศาสตร์ (ใหญ่) printf("%鑾u <br>", $num1); // ตัวเลขเชิงจำนวนที่ไม่มีสัญญาณ (บวก) printf("%鑾u <br>", $num2); // ตัวเลขเชิงจำนวนที่ไม่มีสัญญาณ (ลบ) printf("%%f = %f <br>", $num1); // ตัวเลขเชิงจำนวน (มีความหมายตามการตั้งค่าท้องถิ่น) printf("%%F = %F <br>", $num1); // ตัวเลขเชิงจำนวน (ไม่มีความหมายตามการตั้งค่าท้องถิ่น) printf("%%g = %g <br>", $num1); // ย่อลงของ %e และ %f printf("%%G = %G <br>", $num1); // ย่อลงของ %E และ %f printf("%%o = %o <br>", $num1); // ตัวเลขแปดสิบ printf("%%s = %s <br>", $num1); // ข้อความ printf("%%x = %x <br>", $num1); // ตัวเลขสิบหก (เล็ก) printf("%%X = %X <br>", $num1); // ตัวเลขสิบหก (ใหญ่) printf("%%+d = %+d <br>", $num1); // ช่วงกำหนดสัญญาณ (บวก) printf("%%+d = %+d <br>", $num2); // ช่วงกำหนดสัญญาณ (ลบ) ?>