สตริงที่จัดรูปแบบเอาต์พุต:
<?php$number = 9;$str = "Beijing";printf("มี %u ล้านจักรยานใน %s.",$number,$str);?>ฟังก์ชัน printf() ส่งออกสตริงที่จัดรูปแบบแล้ว
พารามิเตอร์ arg1, arg2, ++ จะถูกแทรกลงในสตริงหลักที่สัญลักษณ์เปอร์เซ็นต์ (%) ฟังก์ชั่นนี้ดำเนินการทีละขั้นตอน ที่เครื่องหมาย % แรก ให้แทรก arg1 ที่เครื่องหมาย % ที่สอง ให้แทรก arg2 และอื่นๆ
หมายเหตุ: หากมีสัญลักษณ์ % มากกว่าพารามิเตอร์ arg คุณต้องใช้ตัวยึดตำแหน่ง ตัวยึดตำแหน่งจะถูกแทรกหลังสัญลักษณ์ % และประกอบด้วยตัวเลขและ "$" ดูตัวอย่างที่ 2
เคล็ดลับ: ฟังก์ชั่นที่เกี่ยวข้อง: sprintf(), vprintf(), vsprintf(), fprintf() และ vfprintf()
printf( รูปแบบ,arg1,arg2,arg++ )
พารามิเตอร์ | อธิบาย |
---|---|
รูปแบบ | ที่จำเป็น. ระบุสตริงและวิธีการจัดรูปแบบตัวแปรภายใน ค่ารูปแบบที่เป็นไปได้: %% - ส่งกลับเครื่องหมายเปอร์เซ็นต์ % %b - เลขฐานสอง %c - อักขระที่สอดคล้องกับค่า ASCII %d - เลขทศนิยมที่มีเครื่องหมาย (ลบ, 0, บวก) %e - ใช้สัญลักษณ์ทางวิทยาศาสตร์ตัวพิมพ์เล็ก (เช่น 1.2e+2) %E - ใช้สัญลักษณ์ทางวิทยาศาสตร์ตัวพิมพ์ใหญ่ (เช่น 1.2E+2) %u - เลขทศนิยมที่ไม่มีเครื่องหมาย (มากกว่าหรือเท่ากับ 0) %f - จำนวนจุดลอยตัว (การตั้งค่าท้องถิ่น) %F - จำนวนจุดลอยตัว (การตั้งค่าที่ไม่ใช่เนทิฟ) %g - เวอร์ชันที่สั้นกว่าของ %e และ %f %G - %E และ %f สั้นลง %o - เลขฐานแปด %s - สตริง %x - เลขฐานสิบหก (ตัวพิมพ์เล็ก) %X - เลขฐานสิบหก (ตัวพิมพ์ใหญ่) ค่ารูปแบบเพิ่มเติม ต้องอยู่ระหว่าง % และตัวอักษร (เช่น %.2f): + (เพิ่ม + หรือ - หน้าตัวเลขเพื่อกำหนดเครื่องหมายของตัวเลข โดยค่าเริ่มต้น ระบบจะทำเครื่องหมายเฉพาะตัวเลขลบเท่านั้น และจะไม่ทำเครื่องหมายตัวเลขบวก) ' (ระบุสิ่งที่จะใช้เป็นช่องว่างภายใน โดยค่าเริ่มต้นคือการเว้นวรรค โดยจะต้องใช้ร่วมกับตัวระบุความกว้าง ตัวอย่างเช่น: %'x20s (ใช้ "x" เป็นช่องว่างภายใน)) - (ค่าตัวแปรการปรับด้านซ้าย) [0-9] (ระบุความกว้างต่ำสุดของค่าตัวแปร) .[0-9] (ระบุจำนวนตำแหน่งทศนิยมหรือความยาวสตริงสูงสุด) หมายเหตุ: หากใช้ค่ารูปแบบข้างต้นหลายค่า จะต้องใช้ค่าเหล่านั้นตามลำดับด้านบนและไม่สามารถรบกวนได้ |
หาเรื่อง1 | ที่จำเป็น. ระบุพารามิเตอร์ที่จะแทรกที่เครื่องหมาย % แรกในสตริงรูปแบบ |
หาเรื่อง2 | ไม่จำเป็น. ระบุพารามิเตอร์ที่จะแทรกลงในสตริงรูปแบบที่เครื่องหมาย % ที่สอง |
หาเรื่อง++ | ไม่จำเป็น. ระบุพารามิเตอร์ที่จะแทรกลงในสตริงรูปแบบที่สัญลักษณ์ % ที่สาม สี่ ฯลฯ |
ค่าส่งคืน: | ส่งกลับความยาวของสตริงเอาท์พุต |
---|---|
เวอร์ชัน PHP: | 4+ |
ใช้ค่ารูปแบบ %f:
<?php$number = 123;printf("%f",$number);?>ใช้ตัวยึดตำแหน่ง:
<?php$number = 123;printf("มีทศนิยม 2 ตำแหน่ง: %1$.2f<br>ไม่มีทศนิยม: %1$u",$number);?>การสาธิตค่ารูปแบบที่เป็นไปได้ทั้งหมด:
<?php$num1 = 123456789;$num2 = -123456789;$char = 50; // อักขระ ASCII 50 คือ 2// หมายเหตุ: ค่ารูปแบบ "%%" ส่งคืนเครื่องหมายเปอร์เซ็นต์ printf("%%b = %b <br>",$num1); // Binary numberprintf("%%c = %c <br>",$char); // ASCII Characterprintf("%%d = %d <br>",$num1); // พิมพ์เลขทศนิยมที่ลงนามแล้วf("%%d = %d <br>",$num2); // พิมพ์เลขทศนิยมที่ลงนามแล้ว("%%e = %e <br>",$num1); // สัญลักษณ์ทางวิทยาศาสตร์ (ตัวพิมพ์เล็ก)printf("%%E = %E <br>",$num1); // สัญลักษณ์ทางวิทยาศาสตร์ (ตัวพิมพ์ใหญ่)printf("%%u = %u <br>",$num1); // เลขทศนิยมที่ไม่ได้ลงนาม (บวก)printf("%%u = %u <br>",$num2); // ไม่ได้ลงนาม เลขทศนิยม (ลบ) printf("%%f = %f <br>",$num1); // ตัวเลขทศนิยม (ทราบการตั้งค่าท้องถิ่น)printf("%%F = %F <br>",$num1); // ตัวเลขทศนิยม (ไม่ทราบการตั้งค่าในตัวเครื่อง) printf("%%g = %g <br>",$num1); // สั้นกว่าของ %e และ %fprintf(" %%G = %G <br>",$num1); // สั้นกว่าของ %E และ %fprintf("%%o = %o <br>",$num1); // เลขฐานแปดพิมพ์f("%%s = %s <br>",$num1); // Stringprintf("%%x = %x <br>",$num1); // เลขฐานสิบหก (ตัวพิมพ์เล็ก)printf("%%X = %X <br >",$num1); // เลขฐานสิบหก (ตัวพิมพ์ใหญ่)printf("%%+d = %+d <br>",$num1); // ตัวระบุเครื่องหมาย (บวก)printf("%%+d = %+d <br>",$num2); // ตัวระบุเครื่องหมาย (ลบ)?>การสาธิตตัวระบุสตริง:
<?php$str1 = "สวัสดี";$str2 = "สวัสดีชาวโลก!";printf("[%s]<br>",$str1);printf("[%8s]<br>",$str1) ;printf("[%-8s]<br>",$str1);printf("[%08s]<br>",$str1); ;printf("[%-8s]<br>",$str1);printf("[%08s]<br>",$str1); printf("[%'*8s]<br>",$str1);printf("[%8.8s]<br>",$str2);?>