Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 您对非结构化html内容的多语言数据库模型有何想法?_Php_Html_Mysql_Database_Content Management System - Fatal编程技术网

Php 您对非结构化html内容的多语言数据库模型有何想法?

Php 您对非结构化html内容的多语言数据库模型有何想法?,php,html,mysql,database,content-management-system,Php,Html,Mysql,Database,Content Management System,我现在用php/mysql/jquery编写了一个非常具体的小型cms。该项目必须使用德语+英语-因此将这些信息存储在单独的字段中:title_de、title_en…、category_de、category_en等等。很简单 现在将有一些html内容的字段,我必须存储无序图像+文本组合的组合。我现在是这样做的: <img>text<img><img>text<img><img>text<img>text<div&g

我现在用php/mysql/jquery编写了一个非常具体的小型cms。该项目必须使用德语+英语-因此将这些信息存储在单独的字段中:title_de、title_en…、category_de、category_en等等。很简单

现在将有一些html内容的字段,我必须存储无序图像+文本组合的组合。我现在是这样做的:

<img>text<img><img>text<img><img>text<img>text<div>otherstuff</div>text<img>
textOtherStuffText
所以非常随机的html元素没有结构

因此,用户必须在为另一种语言创建此结构后将其复制到另一个文本区域并进行翻译

我不喜欢将“结构”和“双重部分,例如图像”存储两次的想法。这将适用于2种语言,但如果是10种语言呢


是否有一种逻辑和简单的方法来分离结构,以及如何在数据库中对其建模?

我认为您寻找的是所谓的国际化和本地化

为此,您不能在数据库中创建任何新列或任何其他表。甚至可以处理语言文件。既然你告诉我你的项目很小,那就行了

您真的应该使用任何在git hub中备受关注的好库

甚至我也有一个使用基本的解决方案

注意:因为我不会使用任何缓存技术来保存 可能存在性能问题。请注意,我会推荐使用任何好的图书馆。我的想法只是为了实施。您可以在此基础上进行增强

en.php

$language = array(
    'Hello' => 'Hello!',
    'HtmlText' => '<h1> HTML </h1>'
);
$language = array(
    'Hello' => 'Bonjor'
    'HtmlText' => '<h1> HTML </h1>'
);

设计问题往往成为讨论问题,也可能主要基于观点。主要是基于意见的问题不在StackOverflow的范围内。不是100%确定我能理解你的问题,但是。。。用户上传文件并提供英文和德文描述的表单如何。然后在数据库中,每个文件行有3个值:图像文件位置、英文描述、德文描述。所以你的形象只有一次。如果您需要其他语言,请为X语言描述添加一列。@chris85:那么建议其他语言。这样的答案没有帮助。先把所有的栏都写下来,然后再写一个语言栏。这将减少数十列/数百列的混乱。您可以让行id重复,但要使
id
language
成为唯一的配对。@Nic-这并不意味着每个图像都有一个描述。这是一个免费的html——正如您在我的示例中看到的那样。甚至更多——等等。因此,我无法根据一些图像创建结构并选择正确的语言。我希望事情能这么简单。没有限制-一些图像将在不同的场景中以不同的文本出现。或者没有文本。或5倍相同的图像。。。但有时是文字,有时不是。。。你明白我的意思吗#
/* Validate whether $_GET['lang'] is set or not. 
Whether your havig any language of that specif or not
Then use the following way to implement
 */

URL : http://127.0.0.1/project/?lang=en

include_once $_GET['lang'].'php'

echo $language['Hello']; //Irrespective which ever language you use it will load