变量中的法语“'”阻止其呈现

时间:2017-11-12 23:56:27

标签: javascript php include character french

法语中的模糊语言问题。 我正在建立一个有5种语言的网站。我已经设置了语言文件,其中包括使用PHP

包含的法语
  

$ lang ['Description'] ='照片';
  $ lang ['cookie'] =“En utilisant notre site Web,vous acceptez que nous utilisions des cookies pour stocker des informations temporaires concernant votre utilization.Cette information ne serajamaisutiliséeàdautres fins!”;

  $ LANG [ '个区域'] = '地区';
  $ lang ['Viewkalender0'] =“Vous avezuneréservationencours quidoitêtretraitéeavantqu'uneréservationultérieurepuisseavoir lieu。”;

我用JS要求这些变量 function checkCookie(){

var regular=getCookie("Homecheznous-Roullens");
if (regular=="Accepted") {
    document.getElementById('cookie').innerHTML=regular;
} else {
   var x= '<?php echo $lang['cookie'] ?>';
   document.getElementById('cookie').innerHTML=x;
   }
}

我可以毫无问题地在语言之间切换,获得正确的内容。但是一旦我在“d'autres”中更正了法语,只添加“'”,法语内容就不会出现。语言文件中的其他所有内容仍然会出现,因此语言文件仍然被接受,而且在我经常使用的文件中“没有问题”。我知道PHP JS等对“或”或vv的敏感性。这就是为什么你已经看到我用“”包围这个变量的原因。它与变量Viewkalender0和“qu'une”完美配合。??有人有一个线索?? Cookie没有设置BTW。一旦我删除',文本显示。

祝你有个美好的一天,约翰

1 个答案:

答案 0 :(得分:1)

我认为问题出在你的变量声明中

var x= '<?php echo $lang['cookie'] ?>';

所以这被替换为服务器端,例如

var x= 'qu'une';

因此x没有正确的文字是正常的。

Solition 1: 逃避&#39;使用\

的符号
qu'une  should be qu\'une 

解决方案2:

尝试更改

var x = "<?php echo $lang['cookie'] ?>";

或使用escma6

var x = `<?php echo $lang['cookie'] ?>`;