为了账号安全,请及时绑定邮箱和手机立即绑定

将 PHP 变量传递给 javascript,包括引号和 javascript

将 PHP 变量传递给 javascript,包括引号和 javascript

PHP
月关宝盒 2023-04-21 13:55:10
这个问题已被问过几次,答案似乎是使用,json_encode但这不起作用,因为我的字符串包含的内容比引号多。这是 PHP 字符串:<img src="test.jpg" :class="{ 'add-class': comment == 1, 'another-class': comment == 2 }" x-on:click="submit()">和是AlpineJS属性,以防您想知道(检查一下,它真的很酷!):class。x-on:这个 PHP 字符串是动态生成的,我想将它传递给一个 javascript 变量,如下所示jsVariable:<script>function test() {  return {    jsVariable: ,    anotherVariable: true,  }}</script>更新如果我使用jsVariable: <?php echo json_encode($php_variable); ?>,我在该行得到 SyntaxError: Unexpected token '&' 。如果我使用jsVariable: '<?php echo json_encode($php_variable); ?>',(添加单引号)然后变量被解析为字符串而不是 HTML。
查看完整描述

2 回答

?
不负相思意

TA贡献1777条经验 获得超10个赞

使用json_encode():


<script>

function test() {

  return {

    jsVariable: <?php echo json_encode($php_variable); ?>,

    anotherVariable: true,

  }

}

</script>


查看完整回答
反对 回复 2023-04-21
?
慕莱坞森

TA贡献1810条经验 获得超4个赞

如果只是用ASCII编码,可以试试base64编码。


PHP 将字符串编码为 base64,然后使用 Javascript 进行解码,如下所示:


<script>

function test(){

  var str = '<?php echo base64_encode($str);?>';

  return {

    jsVariable: atob(str),

    anotherVariable: true

  }

}


alert(test().jsVariable)

</script>

希望这可以帮助。


查看完整回答
反对 回复 2023-04-21
  • 2 回答
  • 0 关注
  • 112 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信