Les sites Web multilingues présentent un défi lorsqu'il s'agit de gérer le contenu linguistique. Cet article explore une méthode pour créer dynamiquement des fichiers de langue Codeigniter à partir d'une base de données, vous permettant de mettre à jour les traductions directement à partir de la base de données et de remplir vos fichiers de langue à la volée.
Créer un tableau appelé lang_token pour stocker les données de traduction :
<code class="sql">CREATE TABLE lang_token ( id INT NOT NULL AUTO_INCREMENT, category TEXT NOT NULL, description TEXT NOT NULL, lang TEXT NOT NULL, token TEXT NOT NULL, PRIMARY KEY (id) );</code>
Créer une fonction de contrôleur pour générer le fichier de langue :
<code class="php">function updatelangfile($my_lang) { $query = $this->db->where('lang', $my_lang)->get('lang_token'); $langstr = "<?php $lang = array(); "; foreach ($query->result() as $row) { $langstr .= "$lang['{$row->category}_{$row->description}'] = \"{$row->token}\";\n"; } write_file('./application/language/' . $my_lang . '/general_lang.php', $langstr); }</code>
<code class="php">function __construct() { parent::__construct(); $this->load->helper('file'); $this->lang->load('general', 'english'); }</code>
En utilisant cette méthode, vous pouvez gérer de manière transparente le contenu linguistique de votre site Web à partir d'une base de données centrale, simplifiant ainsi les mises à jour des traductions et garantissant la cohérence entre les langues. versions.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!