因此,在我的 Controller 逻辑中,我构建了一个大型数据数组,将其 json_encode
转换为传递到我的 View 的变量。但是,我希望这些数据可以在客户端使用 JavaScipt 进行排序——我不认为如何完成排序的细节是相关的,但我很好奇将我的数组从 PHP 转换为 Javascript 的最佳方法是什么。目前,我正在考虑在我的 html 中添加一个标签,例如
<script type="text/javascript">var jsonData = <?php echo $myData ?>; </script>
其中 myData
是我用 PHP 制作的编码数组,然后 jsonData
可供我在其他地方使用。
但是,这意味着整个丑陋的数组将显示在我页面的源代码中。这不是安全问题或其他任何问题,但我觉得必须有一种更好的方法来做到这一点,而且不那么“丑陋”。 任何建议表示赞赏。
最佳答案
您有两个选择。
如果您不想要“丑陋”的 HTML 源,您可以使用 ajax 查询您的应用程序,并将 json 数组存储在变量中。这可以通过简单的路由和 Controller 方法来完成。
在你的routes.php中
Route::get('api/myData',array('as'=>'api.myData','uses'=>'MyController@getMyData'));
在您的MyController.php
public function getMyData() {
return whateverYouWant();
}
然后您可以向 route('api.myData') 发送 ajax 请求
route
方法是一个全局函数,在您的 View 中可用。它将采用命名路由 api.myData
并为其生成 URL。
另一个选项如您所描述的,将数组传递到您的 View 。
关于javascript - 干净地将大型 JSON 数组从 Laravel 传递到 Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24601133/