Pengantarabangsaan dan penyetempatan fungsi PHP

王林
Lepaskan: 2024-04-26 13:54:02
asal
482 orang telah melayarinya

PHP menyediakan fungsi I18N/L10N untuk melaksanakan sokongan berbilang bahasa, termasuk: gettext(): Dapatkan teks terjemahan. setlocale(): Tetapkan tempat. Fungsi lc*: melaksanakan operasi berkaitan setempat. strftime(): Format tarikh dan masa, menggunakan format tetapan setempat.

PHP 函数的国际化和本地化

Pengantarabangsaan dan Penyetempatan Fungsi PHP

Pengantarabangsaan (I18N) dan penyetempatan (L10N) ialah proses pengendalian bahasa dan tempat yang berbeza dalam aplikasi. PHP menyediakan banyak fungsi yang boleh membantu anda melaksanakan sokongan berbilang bahasa untuk aplikasi anda. Fungsi

gettext

gettext() ialah salah satu fungsi yang paling biasa digunakan dalam pengantarabangsaan. Ia menukar rentetan teks kepada versi terjemahannya jika wujud. gettext() 函数是国际化中最常用的函数之一。它将文本字符串转换为其翻译版本(如果存在)。

<?php
$text = gettext("Hello, world!");
echo $text; // 输出:"你好,世界!"
?>
Salin selepas log masuk

要使用 gettext(),你需要创建语言环境文件,其中包含文本字符串及其翻译。

setlocale 函数

setlocale() 函数设置当前语言环境。

<?php
// 设置语言环境为中文
setlocale(LC_ALL, 'zh_CN');
?>
Salin selepas log masuk

lc* 函数

PHP 提供了一系列 lc* 函数,可以执行与语言环境相关的操作:

  • lcfirst() 将字符串第一个字母小写
  • lctranslate() 将字符串转换为大写或小写
  • lcwords() 将字符串中每个单词的首字母大写

strftime 函数

strftime() 函数对日期和时间进行格式化。它使用语言环境设置来确定日期和时间的格式。

<?php
// 输出当前日期,格式为中文
echo strftime("%Y-%m-%d %H:%M:%S", time());
?>
Salin selepas log masuk

实战案例:创建一个简单的多语言应用程序

假设我们有一个带有以下代码的简单 PHP 应用程序:

<?php
echo "Hello, world!";
?>
Salin selepas log masuk

要使其支持多语言,我们需要以下步骤:

  1. 创建一个语言环境目录 (lang)。
  2. lang 目录下创建语言文件,例如 en.pozh_CN.po
  3. 在这些文件中添加文本字符串及其翻译。
  4. 修改应用程序代码以使用 gettext() 函数:
<?php
$text = gettext("Hello, world!");
echo $text;
?>
Salin selepas log masuk
  1. 运行应用程序并设置不同的语言环境,例如:
LC_ALL=en php app.php
Salin selepas log masuk

这将显示文本 "Hello, world!"rrreee

Untuk menggunakan gettext(), anda perlu mencipta fail setempat yang mengandungi rentetan teks dan terjemahannya.

fungsi setlocale🎜🎜setlocale() fungsi menetapkan tempat semasa. 🎜rrreee🎜lc* functions🎜🎜PHP menyediakan satu siri fungsi lc* yang boleh melaksanakan operasi berkaitan setempat: 🎜
  • lcfirst() Huruf kecil huruf pertama rentetan
  • lctranslate() Tukar rentetan kepada huruf besar atau huruf kecil
  • lcwords() Huruf besar huruf pertama bagi setiap perkataan dalam rentetan
🎜fungsi strftime 🎜🎜strftime() Memformat tarikh dan masa. Ia menggunakan tetapan setempat untuk menentukan format tarikh dan masa. 🎜rrreee🎜Contoh Praktikal: Mencipta Aplikasi Berbilang Bahasa Mudah🎜🎜 Katakan kita mempunyai aplikasi PHP mudah dengan kod berikut: 🎜rrreee🎜Untuk menjadikannya berbilang bahasa kita memerlukan langkah berikut:🎜
    Buat direktori tempat ( lang).
  1. Buat fail bahasa dalam direktori lang, seperti en.po dan zh_CN.po.
  2. Tambah rentetan teks dan terjemahannya pada fail ini.
  3. Ubah suai kod aplikasi untuk menggunakan fungsi gettext():
rrreee
  1. Jalankan aplikasi dan tetapkan Tempatan yang berbeza, contohnya:
rrreee🎜Ini akan memaparkan versi bahasa Inggeris bagi teks "Hello, world!". 🎜🎜Dengan menggunakan fungsi pengantarabangsaan dan penyetempatan PHP, anda boleh mencipta aplikasi berbilang bahasa yang boleh berjalan dalam bahasa dan tetapan tempat yang berbeza dengan mudah. 🎜

Atas ialah kandungan terperinci Pengantarabangsaan dan penyetempatan fungsi PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!