在php中, 经常吐出html, js, css这些东东, 之前讨论过把php中的串导入到js中, 这很easy, 而导入数组则稍显麻烦, 我想到了利用json串做中间量进行转换, 如果大家有更好的建议, 欢迎提出。
php代码如下:
<?php
$arr = array (10=>1,3=>2,'c'=>3,'d'=>4,'e'=>"hello");
$arrString = json_encode($arr);
echo $arrString;
echo "\n";
$b =<<<eof
<html>
<script>
var arr = eval("("+'$arrString'+")");
alert(arr[10]);
alert(arr[3]);
alert(arr['c']);
alert(arr['d']);
alert(arr["e"]);
</script>
</html>
eof;
print_r($b);
?>
结果如下:
{"10":1,"3":2,"c":3,"d":4,"e":"hello"}
<html>
<script>
var arr = eval("("+'{"10":1,"3":2,"c":3,"d":4,"e":"hello"}'+")");
alert(arr[10]);
alert(arr[3]);
alert(arr['c']);
alert(arr['d']);
alert(arr["e"]);
</script>
</html>
再次运行上述html/js代码, 可以看到, 数组确实传递到了js中, 结果OK.
可用, 爽歪歪。