将php变量转换为javascript

将php变量转换为javascript,javascript,php,Javascript,Php,以下情况: 我有一个包含一些文本的txt文件。我用PHP通过“文件获取内容”阅读它。 现在我想提交多个表单和一些ajax请求。 要做到这一点,我需要将变量放入JS中 var results = "<?php echo htmlspecialchars($results); ?>"; 那为什么JS看不懂呢 谢谢 编辑: 在html输出中,它完全正确显示。 即使使用所有特殊字符,如^,(或& (我将上面的字符串编辑为allready会给出的错误)可能是Unicode U+200B零宽度

以下情况:

我有一个包含一些文本的txt文件。我用PHP通过“文件获取内容”阅读它。 现在我想提交多个表单和一些ajax请求。 要做到这一点,我需要将变量放入JS中

var results = "<?php echo htmlspecialchars($results); ?>";
那为什么JS看不懂呢

谢谢

编辑:

在html输出中,它完全正确显示。 即使使用所有特殊字符,如^,(或&


(我将上面的字符串编辑为allready会给出的错误)

可能是Unicode U+200B零宽度空格字符?已知该字符会导致意外的标记非法JavaScript语法错误

如果您的目的是将该字符串发送到另一个请求,为什么不使用json对您的内容进行编码

或者试试这个


str\u replace(“\xe2\x80\x8b”,”,“$str);

是一个JSON字符串吗

如果是这样,您希望使用

htmlspecialchars(json_编码(json_解码($results,true)))

这样,信息就可以首先解码成一个数组,然后编码为Javascript就绪的JSON

我看到的唯一问题是,您似乎没有使用有效的JSON,因为它没有在正确的引号中,因此根据您使用的PHP版本,它可能无法解析数据。理想的情况是您的数据看起来像

['Email' : 'MyName&mail.net', 'Pass' : 's2p3rs3cr3t', 'City' : 'aCity']

这将为您省去试图使用正则表达式将信息解析为可读格式的麻烦,因为正则表达式有时可能会错误地替换/解析您可能需要的信息。不过,我相信使用JSON对数据进行解码和编码应该是可行的。

下面的内容是您想要的

     <?php
       $var='MyName@mail.net - Pass: s2p3rs3cr3t - City: aCity';
     ?>

      <script type="text/javascript">
      var mymail = '<?php echo json_encode($var); ?>';
      alert(mymail);
      </script>

      if not, could you please tell the exact output you want..

var mymail='';
警报(mymail);
如果没有,你能告诉我你想要的确切产量吗。。

可能重复的html代码您可以向我们展示呈现的html代码吗?看起来还可以:-它包括哪些特殊字符?感谢所有的输入人员。在html呈现输出中,它可以正确显示。特殊字符如^、&、@、:,如果呈现的html具有
var results=“电子邮件:MyName@mail.net-通行证:s2p3rs3cr3t-城市:城市"
,那么该语句没有问题。您是否检查了意外标记非法显示在哪一行?它还不是json字符串,但我想稍后通过ajax请求发送它。是的,所以您要做的是使用我上面提到的内容将其转换为json字符串,以便Javascript可以将其读取为json。如果您如果您使用的是PHP 5.5或5.6,以上内容应该正确解析为JSON.ahh,现在我明白了。另外,您为我的下一步节省了一些时间。哈哈,这很有效。您是天才。谢谢:)没问题:)很高兴能帮到您!
     <?php
       $var='MyName@mail.net - Pass: s2p3rs3cr3t - City: aCity';
     ?>

      <script type="text/javascript">
      var mymail = '<?php echo json_encode($var); ?>';
      alert(mymail);
      </script>

      if not, could you please tell the exact output you want..