PHP/Codeigniter中的多语言动态图像选择

PHP/Codeigniter中的多语言动态图像选择,php,codeigniter,Php,Codeigniter,我正在为我的Codeingiter/PHP应用程序添加多语言支持,并试图确定一种处理图像的好方法 对于文本,我使用i18n和Codeingiter的母语类 动态图像选择的建议代码: if ($this->uri->segment(1) == 'br') { Brazilian image link } else { English image link } 对于CSS文件中的图像,我计划将它们作为PHP文件处理,然后使用与上面相同的代码 这种方法有没有潜在的缺陷?这看起来很麻烦,想

我正在为我的Codeingiter/PHP应用程序添加多语言支持,并试图确定一种处理图像的好方法

对于文本,我使用i18n和Codeingiter的母语类

动态图像选择的建议代码:

if ($this->uri->segment(1) == 'br') { Brazilian image link } else { English image link }
对于CSS文件中的图像,我计划将它们作为PHP文件处理,然后使用与上面相同的代码


这种方法有没有潜在的缺陷?这看起来很麻烦,想知道这是否是一种更有效的方法。

我看不到任何方法可以使用PHP或其他脚本语言来实现可变CSS。这一页可能会给你一些想法


我建议将语言存储在会话中,并根据URI的段对其进行修改。在构造函数中执行此操作将为代码中的if和else节省大量的

要动态加载图像,请使用以下类型的命名约定:
imagename\u lang.ext
,即:
homepage\u br.jpg

加载将如下所示:
echo“homepage\u$this->session->userdata('lang').jpg”
或者如果您首先将其存储在如下变量中:
echo“homepage\u$lang.jpg”

对于CSS中的图像,将CSS文件拆分为三个:

  • style.css-存储所有不区分语言的样式
  • style_en.css-存储英文版的所有图像
  • style_br.css-存储巴西版本的所有图像

  • 这样,在包含相应的CSS文件时,只需对语言进行一次检查。

    谢谢。这正是我所想的。感谢您的确认,链接看起来相当不错。