javascript - 服务器端生成的 javascript 数组抛出未终止的字符串文字

标签 javascript php arrays syntax

这就是我在后端生成它的方式:

$scr = '';
    forech(){
        $scr .= '['.$key.',"'.$address.'",'.$lat.','.$lng.',"'.$post_title.'","'.$post_image.'","'.$post_url.'","'.$default_price.'","'.$excerpt.' "],';
    }

这就是我输出它的地方:

var events = [<?php echo $scr; ?>];

但是我在 firebug 控制台中收到此错误(取决于内容,因为使用相同的代码没有发生其他内容:

SyntaxError: unterminated string literal


ent/encantadora-casa-moditerranea-con-vistas-al-mar/","118","

(通过查看源代码,我可以看到该代码后面有一个换行符)

有什么办法可以逃脱吗?

最佳答案

当您拥有 json_encode() 时,无需将自己的序列化为 JavaScript 。只需将整个输出转储到您的页面中,而不必担心转义。

var events = <?php echo json_encode($my_array_thing); ?>;

关于javascript - 服务器端生成的 javascript 数组抛出未终止的字符串文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20021162/

相关文章:

javascript - 使用 Mongoose.js 按嵌套数组中的字段排序

javascript - 在自定义框模式中滚动到​​顶部

php - 搜索引擎优化友好网址

arrays - Vuejs : v-model array in multiple input

python - 迭代 numpy 数组以获取子数组

php - 将 PHP 进程作为守护进程运行,同时从后台安全地终止它

javascript - 有什么方法可以使用 Javascript 从 Dropbox 注销用户吗?

javascript - javascript 中的 json 值到字符串数组

javascript 警告消息不弹出,为什么?

php - 整合 salesforce 和 backendless