var longitudeArray = new Array(<?php $result = count($longitudeArray);
if ($result > 1){
echo implode(',', $longitudeArray);
} else {
echo $longitudeArray[0];
}
?>);
$longitudeArray
包含数字数组,如:$longitudeArray = array(23.54545, 2323.32);
上面的脚本创建以下javascript数组:
var longitudeArray = new Array(12.32444,21.34343,23.5454);
但如果我在$longitudeArray
中传递字符串,如:
$longitudeArray = array('one', 'two');
而不是$longitudeArray
中的整数值,那么我的javascript数组无法正常创建或无效。
答案 0 :(得分:5)
尝试
var longitudeArray=<?=json_encode($longitudeArray)?>;
答案 1 :(得分:1)
如果您将一个字符串数组传递给您的代码,您最终会在生成的javascript代码中没有引号。你需要以某种方式添加一些引号,例如:
var longitudeArray = new Array("<?php echo implode('","', $longitudeArray);?>");
答案 2 :(得分:0)
@Shad,非常有用和有效的方法。以同样的方式,如果一个人试图转换PHP数组以传递回JavaScript函数(EG:一个AJAX回调),那将完成:
$some_php_array = array( 'indexA' => 'nice', 'indexB' => 'move' );
json_encode($some_php_array);
PHP中的PHP数据如下所示:
{"indexA":"nice","indexB":"move"}