【发布时间】:2020-08-27 12:39:01
【问题描述】:
我希望用户可以在不更改当前页面的情况下通过单击语言链接来切换语言。
我找到了一个类似下面的代码。它可以工作但找不到页面,因为页面名称不同。例如:当我在“../en/about.php”页面更改语言时,它会转到“../tr/about.php”页面.应该去的页面是“../tr/hakkimizda.php”。
我该如何解决这个问题?
<?php
//URL path. eg: index-en/job.php
$path = trim($_SERVER['REQUEST_URI'],'/');
//language from URL. eg: index-en
$lang = explode('/',$path)[0];
//Paths in other languages: eg: 'tr' => 'index-cn/job.php'
$langs = [
'en'=>preg_replace("/$lang/",'../en',$path,1),
'tr'=>preg_replace("/$lang/",'../tr',$path,1),
];
?>
<ul class="dropdown-menu">
<li>
<a href="<?= $langs['tr']?>">Türkçe</a>
</li>
<li>
<a href="<?= $langs['en']?>">English</a>
</li>
</ul>
【问题讨论】:
-
你必须定义
about应该重定向到hakkimizda。代码做了它应该做的事情,将en/something更改为tr/something。 -
我该怎么做?我不懂php语言
-
我查看了链接,但没有帮助。
-
使用:$_SERVER['PHP_SELF'];