>  기사  >  백엔드 개발  >  PHP涉及数据库内容的多语言设计怎么实现

PHP涉及数据库内容的多语言设计怎么实现

WBOY
WBOY원래의
2016-06-13 12:15:591504검색

PHP涉及数据库内容的多语言设计如何实现?
请问有人做过么?(就类似APPLE的官网的内容多语言切换)能不能帮一下忙,谢谢了
------解决思路----------------------
表中字段加多語言。
例如:
sc_title, en_title, tc_title
------解决思路----------------------
语言改变不改动数据库的做法
table: res (id, ...)
table: res_lang (id, res_id, 语言, 内容...)
------解决思路----------------------

引用:
增加语言难道要增加表吗?
增加表就不是改动数据库了吗?

Quote: 引用:

语言改变不改动数据库的做法
table: res (id, ...)
table: res_lang (id, res_id, 语言, 内容...)


这个用法不需要增加表,以上
------解决思路----------------------
不用加字段,也不用加标,这样设计表
我之前是这样做的:

<br />CREATE TABLE `article` (<br />  `id` int(10) unsigned NOT NULL AUTO_INCREMENT,<br />  `albumID` int(11) DEFAULT NULL,<br />  `category` mediumint(8) unsigned NOT NULL DEFAULT '0',<br />  `title` varchar(120) NOT NULL,<br />  `uid` int(10) unsigned NOT NULL DEFAULT '0', <br />  `description` mediumtext NOT NULL,<br />  `content` text NOT NULL, <br />  `puttime` int(10) unsigned NOT NULL DEFAULT '0', <br />  `listorder` int(10) unsigned NOT NULL DEFAULT '999', <br />  `lang` varchar(20) NOT NULL DEFAULT 'zh_cn',<br />  PRIMARY KEY (`id`),<br />  KEY `category` (`category`),<br />  KEY `lang` (`lang`) <br />) ENGINE=MyISAM AUTO_INCREMENT=5961 DEFAULT CHARSET=utf8<br /><br />



其中lang字段用来标识不同语言,所有语种的都保存到这个表
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.