Php 在网页中搜索单词并替换它们
我正在尝试为我的网站提供翻译服务 用户想要阅读的语言存储在Php 在网页中搜索单词并替换它们,php,Php,我正在尝试为我的网站提供翻译服务 用户想要阅读的语言存储在$languageCode中(例如fr) 然后,我在一个数据库中有一个名为translations的表,该数据库有四列: ID-每个翻译的主键 toTranslate-在文档中搜索的文本 parentID-转换的父元素的值(以避免两组具有不同翻译的相同文本之间的混淆) 翻译-将翻译的文本替换为 语言-文本翻译为哪种语言(语言代码,如fr) 我想知道 如何在文档中搜索与toTranslate匹配的文本字符串,以及谁的父元素的id与pa
$languageCode
中(例如fr
)
然后,我在一个数据库中有一个名为translations
的表,该数据库有四列:
-每个翻译的主键ID
-在文档中搜索的文本toTranslate
-转换parentID
的父元素的值(以避免两组具有不同翻译的相同文本之间的混淆)
-将翻译
翻译的文本替换为
-文本翻译为哪种语言(语言代码,如fr)语言
- 如何在文档中搜索与
匹配的文本字符串,以及谁的父元素的toTranslate
与id
匹配parentID
- 如何用给定的翻译替换该文本
<h1 id="heading">My website</h1>
<div id="paragraph">
Welcome to my website!
</div>
关于php函数/方法以及每个模块如何协同工作,请为我指明正确的方向。如果可以,请提供一个例子。我在这里简化了,但你得到了大意:
<?php
class mytext {
private $lang;
function __construct( $lang ){
$this->lang = $lang;
}
function get( $key ){
// key can be anything here as long as it is unique
// you could go with something like "/mywebsite/heading"
// fetch data from db, with something like this
// select text from translationTable where id = $key AND language = $this->lang
return $dbResult['text'];
}
}
$mytext = new mytext('fr');
?>
<h1 id="heading"><?=$mytext->get('/mywebsite/heading')?></h1>
<div id="paragraph">
<?=$mytext->get('/mywebsite/paragraph')?>
</div>
请看下面的示例。我知道这不是您问题的答案,但是。。。当你自己的网站需要翻译时,有一种更简单的方法:简单地用$mytext->get('home','heading')这样的函数替换需要翻译的文本;然后,只需在创建时在$mytext对象中设置语言即可。让$mytext对象从DB获取文本(大约)如果这是您要查找的内容,我可以更详细地介绍它?@minychillo这听起来很像我要查找的内容,请在回答中用一个示例详细说明
<?php
class mytext {
private $lang;
function __construct( $lang ){
$this->lang = $lang;
}
function get( $key ){
// key can be anything here as long as it is unique
// you could go with something like "/mywebsite/heading"
// fetch data from db, with something like this
// select text from translationTable where id = $key AND language = $this->lang
return $dbResult['text'];
}
}
$mytext = new mytext('fr');
?>
<h1 id="heading"><?=$mytext->get('/mywebsite/heading')?></h1>
<div id="paragraph">
<?=$mytext->get('/mywebsite/paragraph')?>
</div>