Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Belajar menggunakan fungsi sprintf() PHP untuk mencapai output berformat

Belajar menggunakan fungsi sprintf() PHP untuk mencapai output berformat

王林
王林asal
2023-06-27 08:12:121981semak imbas

Dalam pembangunan PHP, penyeragaman dan pemformatan kandungan output adalah sangat penting, terutamanya apabila memproses jenis data yang melibatkan jumlah, masa, dsb. PHP menyediakan banyak fungsi untuk mencapai output terformat ini dengan mudah, salah satunya ialah fungsi sprintf(). Fungsi

sprintf() ialah fungsi output berformat Ia boleh memformat dan mengeluarkan parameter berikut mengikut rentetan format yang ditentukan. Sintaksnya adalah seperti berikut:

sprintf(format,arg1,arg2,......)

Antaranya, format ialah rentetan format yang boleh mengandungi satu atau lebih penentu format. arg1, arg2, dsb. ialah parameter yang perlu diformatkan.

Penentukan format bermula dengan % aksara, diikuti dengan aksara untuk menentukan jenis parameter. Penentu format biasa adalah seperti berikut:

  • %s jenis rentetan
  • %d jenis integer
  • %f jenis titik terapung
  • %c jenis aksara
  • %b jenis binari
  • %o octal hem type
  • %e Jenis notasi saintifik
  • Sebagai contoh, kami menggunakan fungsi sprintf() untuk mengeluarkan rentetan yang mengandungi nama dan umur, dengan nama jenis rentetan dan umur adalah jenis integer. Anda boleh menulis kod seperti ini:
$name = "Tom";
$age = 18;
echo sprintf("我的名字是%s,年龄是%d岁。",$name,$age);

Hasil yang dijalankan adalah seperti berikut:

我的名字是Tom,年龄是18岁。

Anda boleh melihat bahawa fungsi sprintf() memformat parameter mengikut rentetan format yang ditentukan dan mengeluarkannya, dan secara automatik menggantikan pemegang tempat bagi penentu format.

Selain penentu format biasa, fungsi sprintf() juga menyokong beberapa teg dan kelayakan khas, yang boleh digunakan untuk mengawal format output dengan baik. Sebagai contoh, anda boleh menggunakan titik perpuluhan diikuti dengan nombor untuk menentukan bilangan tempat perpuluhan dalam nombor titik terapung, tanda tambah (+) untuk menentukan tanda nombor positif atau negatif, sifar untuk mengisi jurang, dsb. .

Berikut ialah beberapa markah khas dan kelayakan yang biasa digunakan:

Titik perpuluhan diikuti dengan nombor, seperti %.2f, menunjukkan bahawa dua tempat perpuluhan dikekalkan
  • Tanda tambah (+), seperti % +d, menunjukkan bahawa kedua-dua nombor positif dan negatif dipaparkan Simbol
  • tanda tolak (-), seperti %-10s, bermaksud penjajaran kiri dan pelapik ruang di sebelah kanan pemegang tempat, dengan jumlah lebar 10 aksara
  • sifar (0), seperti %04d, bermaksud kiri pemegang tempat Berlapik sisi dengan sifar, jumlah lebar ialah 4 aksara
  • tanda paun (#), seperti %#o, menunjukkan bahawa perlapanan keluaran diawali dengan 0
  • ruang ( ), seperti %d, menunjukkan bahawa nombor positif memaparkan ruang dan nombor negatif memaparkan tanda
  • Berikut ialah contoh praktikal untuk menunjukkan cara menggunakan fungsi sprintf() untuk output berformat. Katakan kami mempunyai jadual maklumat pesanan, yang merangkumi medan seperti nombor pesanan, tarikh pesanan, jumlah pesanan, dll. Kami ingin mengeluarkan maklumat pesanan ke halaman dalam bentuk jadual.

Mula-mula tentukan tatasusunan dua dimensi $pesanan untuk mensimulasikan senarai maklumat pesanan:

$orders = [
    ["order_no" => "20190813001", "order_date" => "2019-08-13", "order_amount" => 289.5],
    ["order_no" => "20190813002", "order_date" => "2019-08-13", "order_amount" => 1032],
    ["order_no" => "20190813003", "order_date" => "2019-08-13", "order_amount" => 760.85],
    ["order_no" => "20190814001", "order_date" => "2019-08-14", "order_amount" => 948.5],
    ["order_no" => "20190814002", "order_date" => "2019-08-14", "order_amount" => 213.75],
    ["order_no" => "20190814003", "order_date" => "2019-08-14", "order_amount" => 657.9],
    ["order_no" => "20190815001", "order_date" => "2019-08-15", "order_amount" => 1368.25],
    ["order_no" => "20190815002", "order_date" => "2019-08-15", "order_amount" => 768.5],
    ["order_no" => "20190815003", "order_date" => "2019-08-15", "order_amount" => 840.8]
];

Kemudian tulis kod berikut dan gunakan fungsi sprintf() untuk mengeluarkan maklumat pesanan:

echo "<table border='1'>";
echo "<tr><th>订单号</th><th>订单日期</th><th>订单金额</th></tr>";
foreach($orders as $order){
    echo "<tr>";
    echo sprintf("<td>%s</td><td>%s</td><td>¥%.2f元</td>",$order["order_no"],$order["order_date"],$order["order_amount"]);
    echo "</tr>";
}
echo "</table>";

Hasil berjalan adalah seperti berikut:

订单号    订单日期    订单金额
20190813001    2019-08-13    ¥289.50元
20190813002    2019-08-13    ¥1032.00元
20190813003    2019-08-13    ¥760.85元
20190814001    2019-08-14    ¥948.50元
20190814002    2019-08-14    ¥213.75元
20190814003    2019-08-14    ¥657.90元
20190815001    2019-08-15    ¥1368.25元
20190815002    2019-08-15    ¥768.50元
20190815003    2019-08-15    ¥840.80元

Seperti yang anda lihat, menggunakan fungsi sprintf () untuk memformat output, yang boleh menjadikan kandungan output lebih standard dan cantik, dan membolehkan kawalan kandungan output yang lebih tepat. Dalam pembangunan sebenar, kita boleh menggunakan fungsi sprintf() secara fleksibel untuk memenuhi pelbagai keperluan keluaran yang kompleks dan meningkatkan kecekapan pembangunan dan kebolehbacaan program.

Atas ialah kandungan terperinci Belajar menggunakan fungsi sprintf() PHP untuk mencapai output berformat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn