gpt4 book ai didi

PHP 中使用 Switch 的 JavaScript 脚本

转载 作者:行者123 更新时间:2023-12-03 02:20:42 25 4
gpt4 key购买 nike

首先我要说的是,我对 PHP 的了解充其量是有限的,所以我不确定我所尝试的是否正确。

本质上,我需要 PHP 根据变量(在本例中为语言)运行特定脚本。从网上查到,这需要使用switch语句,但似乎运行不正常。下面是代码的开头

<?php
$lang = "en-US";

switch ($lang) {
case "en-US":
<script type="text/javascript">
(function() {
var se = document.createElement('script'); se.type = 'text/javascript'; se.async = true;
se.src = '//storage.googleapis.com/code.rival.com/js/3ca9-4824-43d0-81ec-0c04fb80901b.js';
var done = false;
se.onload = se.onreadystatechange = function() {
if (!done&&(!this.readyState||this.readyState==='loaded'||this.readyState==='complete')) {
done = true;
}
};
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(se, s);
})();
</script>
;
break;
case "de-DE":
<script type="text/javascript">
(function() {
var se = document.createElement('script'); se.type = 'text/javascript'; se.async = true;
se.src = '//storage.googleapis.com/code.rival.com/js/d8d2-9653-427d-bcb6-13e135d6195e.js';
var done = false;
se.onload = se.onreadystatechange = function() {
if (!done&&(!this.readyState||this.readyState==='loaded'||this.readyState==='complete')) {
done = true;
}
};
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(se, s);
})();
</script>
;
break;

还有相当多的代码,但我不想在这里放置一堵代码墙。最后的默认值使用与“case "en-US"”相同的 JavaScript。

我希望这个问题有意义。

最佳答案

你不能像那样混合 javascript 和 php。如果您需要输出 javascript,您应该echo 它或退出 php。

此外,我不确定是否还有更多差异,但如果只是脚本的名称,您可以使用数组删除所有重复的 javascript。

例如:

<?php
$lang = "en-US";

// Store all combinations
$languageScripts = [
'en-US' => '3ca9-4824-43d0-81ec-0c04fb80901b.js',
'de-DE' => 'd8d2-9653-427d-bcb6-13e135d6195e.js',
];

// Output the javascript
?>
<script type="text/javascript">
(function() {
var se = document.createElement('script'); se.type = 'text/javascript'; se.async = true;

// Here you add the script you want to run:
se.src = '//storage.googleapis.com/code.rival.com/js/<?php echo $languageScripts[$lang]; ?>';

var done = false;
se.onload = se.onreadystatechange = function() {
if (!done&&(!this.readyState||this.readyState==='loaded'||this.readyState==='complete')) {
done = true;
}
};
var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(se, s);
})();
</script>
<?php
// continue with your php script

关于PHP 中使用 Switch 的 JavaScript 脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49176521/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com