我尝试设计多语言网站。在我的视图文件中,我把一些依赖于语言的变量放在不同的内容中。我有一个解析视图文件并将变量放入数组的函数。比我连接到数据库并获取内容。最初,问题是关于优化此查询以获取内容。但是,也许,整个方法都错了? 这是DB表:
FIELDS languages_short_name, char(3), PRI variable, varchar(20),PRI content, longtext LANGUAGES short_name, char(3), PRI name, varchar(20)
以下是查询:
$subquery = 'Select \'' .
implode('\' as variable union Select \'', $var_array) . '\'';
$query = sprintf( "Select tmp.variable,
if(fields.content is NULL , '%s', fields.content) as content FROM fields
RIGHT JOIN (%s) tmp
ON tmp.variable = fields.variable
AND fields.languages_short_name = '%s'", 'not defined', $subquery, $lang );