我有一个包含JavaScript对象的php文件(部分被php回显)。该文件的调用者为:
<script src="js/file.php"></script>
该文件的内容基本上是:
<?php
header('Content-Type: text/javascript');
$custom_icons = JSON_encode($object);
?>
var JSON_icons = <?php echo $custom_icons ?>;
var icons = JSON_icons + {
"facebook": {'name': 'facebook', 'text': 'Facebook', 'icon_url': 'img/logos/facebook.png', 'url': 'http://www.facebook.com'}
};
请忽略由于脚本缩短而可能出现的任何编码/语法错误。我遇到的问题是,在调用脚本时,javascript会引发错误:
Uncaught SyntaxError: Unexpected token <
从根本上讲,这意味着php没有遍历文件并打印出应有的内容。它基本上使文件保持不变,并且php代码仍然保留在那里。
我该如何解决?我真的在这里迷路了。
谢谢!
更新: PHP实际上检查了文件,发现了一些错误,并因此使用html元素回显了它们。无效的“ <”令牌来自<br/>
php的打印内容,而不是<?php
标签本身,就像我(笨拙地)认为的那样。
我认为问题是这样的:
var icons = JSON_icons + {
"facebook": {'name': 'facebook', 'text': 'Facebook', 'icon_url': 'img/logos/facebook.png', 'url': 'http://www.facebook.com'}
};
因为JSON_encode($object)
结果以字符串开头{
和结尾,}
导致结果混淆,... JSON_icons + { ...
结果... }{ ...
导致意外的令牌错误。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句