如果你想的网址无法读取,你可以编码每个字符\ XNN转义序列:
<?php
$arr = array("http://foo.com","http://bar.com","http://baz.com");
$encodedArr = array();
foreach($arr as $url) {
$encodedUrl = '';
for($i = 0; $i < strlen($url); ++$i) {
$encodedUrl .= '\\x'.str_pad(
sprintf('%x', ord($url[$i])),
2, STR_PAD_LEFT);
}
$encodedArr[] = '"'.$encodedUrl.'"';
}
?>
<script type="text/javascript">
var newArr = [ <?php echo implode(',' ,$encodedArr); ?> ];
alert(newArr[0]);
</script>
书面的JavaScript看起来像这样:
var newArr = [ "\x68\x74\x74\x70\x3a\x2f\x2f\x66\x6f\x6f\x2e\x63\x6f\x6d","\x68\x74\x74\x70\x3a\x2f\x2f\x62\x61\x72\x2e\x63\x6f\x6d","\x68\x74\x74\x70\x3a\x2f\x2f\x62\x61\x7a\x2e\x63\x6f\x6d" ];
alert(newArr[0]);
但会提醒http://foo.com
即使你对它们进行了模糊处理(这是你所能做的),它们可以用JS调试器挖掘出来。 – mario