PHP数组到javascript循环与json_编码
大家好,我是一个新手拉威尔开发,在我的刀片我有一个php变量$x,这是一个数组 我的问题是什么是最好的方法以及何时应用每种方法 我的第一种方法是使用foreach循环,例如:PHP数组到javascript循环与json_编码,javascript,php,jquery,arrays,laravel,Javascript,Php,Jquery,Arrays,Laravel,大家好,我是一个新手拉威尔开发,在我的刀片我有一个php变量$x,这是一个数组 我的问题是什么是最好的方法以及何时应用每种方法 我的第一种方法是使用foreach循环,例如: <script> var javascript = []; @foreach($x as $value) javascript[$loop->index] = $value; @endforeach </script> var
<script>
var javascript = [];
@foreach($x as $value)
javascript[$loop->index] = $value;
@endforeach
</script>
var javascript=[];
@外汇($x为$value)
javascript[$loop->index]=$value;
@endforeach
我的第二种方法是使用@json或json_encode
<script>
var javascript = @json($x);
</script>
var javascript=@json($x);
什么方法最好??何时应用不同的方法
很抱歉这个新手问题!!
谢谢你的帮助。最简单的方法就是像使用
@JSON
一样使用JSON。这是非常安全的,因为JSON语法总是适用于有效的JavaScript表达式
文档中甚至提到了它,在下面
您的第一个示例不必要地复杂,而且只适用于数字索引数组,因此PHP的关联数组不会像预期的那样工作。这是一个广泛的问题,但JSON总是会更加健壮。例如,在第一个代码示例中,密钥和值都存在一个微不足道的字符串注入漏洞。为什么不在控制器中执行
json_encode()
,并将json传递给已设置的刀片服务器呢?我想这取决于首选项,但最好使用json_encode方法,因为它每次都会为您提供有效/可解析的javascript。json encode将把数组组成json字符串,同时数组元素初始化将创建元素值,那么如何比较两种不同的值类型呢?谢谢大家的回答谢谢大家的回答