Руководство по PHP-переводу и интернационализации веб-сайтов

more

Yee

Aug 03, 2024

cover-img

Перевод PHP и интернационализация веб-сайтов

Необходимость перевода PHP файлов обычно возникает на сайтах и веб-приложениях для обеспечения многоязычной поддержки. Это позволяет сайту отображать соответствующий контент в зависимости от языковых предпочтений пользователя.

Перевод и практика проектов

Мы успешно реализовали интернационализацию веб-сайтов в нескольких проектах, и ниже представлено одно из решений, которое мы использовали.

Сначала мы выбрали O.Translator для перевода PHP файлов, и далее будет кратко описано его конкретное использование.

O.Translator — это онлайн-платформа для перевода документов, поддерживающая перевод PHP файлов и способная переводить на более чем 70 языков мира.

С помощью O.Translator мы можем напрямую переводить PHP файлы на различные целевые языки, а затем динамически загружать их в проекте в зависимости от выбранного пользователем языка, тем самым обеспечивая многоязычную поддержку сайта.

Ниже приведен конкретный план действий:

Структура каталога

Предположим, что структура вашего проекта выглядит следующим образом:

project_root/
├── index.php
├── example.en.php
├── example.cn.php
├── example.fr.php

Создание файлов с текстами

Создайте и отредактируйте PHP файл с текстами на одном языке, здесь мы возьмем китайский в качестве примера.

example.cn.php

Перевод на другие языки

Посетите главную страницу O.Translator.

Нажмите кнопку начала перевода, чтобы завершить вход.

O.Translator

Загрузите файл и выберите язык в соответствии с вашими потребностями, затем нажмите начать перевод.

O.Translator

Дождитесь завершения перевода, чтобы получить перевод на целевой язык.

O.Translator

example.en.php

O.Translator предоставляет бесплатный предварительный просмотр, который переводит часть контента для ознакомления пользователя. Если результат устраивает, можно оплатить перевод оставшегося контента.

Это одна из причин, почему мы выбираем O.Translator: никогда не нужно платить за неудовлетворительный товар.

Главный файл(index.php)

В главном файле index.php загружается соответствующий языковой файл в зависимости от выбора языка пользователем.

<?php

 // ...

$lang = isset($_GET['lang']) ? $_GET['lang'] : 'en';

switch($lang) {
    case 'en':
        include('example.en.php');
        break;
    case 'cn':
        include('example.cn.php');
        break;
    case 'fr':
        include('example.fr.php');
        break;
    default:
        include('example.en.php');
        break;
}

 // ...

?>

Используйте в HTML-шаблоне следующим образом:

<!DOCTYPE html>
<html lang="<?php echo $lang; ?>">
  <head>
    <meta charset="UTF-8" />
    <title><?php echo $_['heading_home']; ?></title>
  </head>
  <body>
    <header>
      <h1><?php echo $_['heading_home']; ?></h1>
      <nav>
        <ul>
          <li><?php echo $_['heading_about']; ?></li>
          <li><?php echo $_['button_read_more']; ?></li>
        </ul>
      </nav>
    </header>
  </body>
</html>

Дополнительные пояснения

  • Получение выбора языка пользователя

Здесь предполагается, что язык, выбранный пользователем, определяется через GET параметр (например, ?lang=en). Вы также можете использовать другие методы, такие как session, cookie или языковые предпочтения браузера.

  • Проблемы с производительностью

Если часто загружать и анализировать несколько PHP-файлов, это может привести к определенным затратам на производительность.

  • Масштабируемость

Когда количество языков или текстов становится очень большим, управление несколькими языковыми файлами может стать сложным.

Тема

Сценарий

Сценарий

Опубликованные статьи9

Рекомендуемое чтение