如何通过 Laravel 刀片在数组内打印数组?
Posted
技术标签:
【中文标题】如何通过 Laravel 刀片在数组内打印数组?【英文标题】:How to print arrays inside array by Laravel blade? 【发布时间】:2015-09-15 16:46:02 【问题描述】:我的函数将数组返回到 laravel 刀片页面中的变量,如下所示:
Array
(
[id] => 1
[name] => Enterpise
[children] => Array
(
[0] => Array
(
[id] => 2
[name] => name1
[children] => Array
(
[0] => Array
(
[id] => 5
[name] => name2
[children] =>
)
[1] => Array
(
[id] => 6
[name] => name3
[children] => Array
(
[0] => Array
(
[id] => 11
[name] => name4
[children] =>
)
.....
现在我想使用foreach
之类的东西在我的页面中打印这些值。考虑到没有指定他们孩子的数字,在我的函数内部不可能做到这一点。在刀片中完成对我来说很重要。我该怎么做?
【问题讨论】:
【参考方案1】:在您的刀片文件中,您可以使用任何 php 函数,例如 print_r()
。
示例:
print_r($array)
【讨论】:
dd() 是 laravel 提供的通用函数,你可以像刀片中的原生 php 函数一样使用。 dd($array) laravel-news.com/laravel-5-dd-gets-upgrade.【参考方案2】:因为这是一个非常古老的问题,但我发现json
指令非常有用。
<pre>
<code>
@json($array);
</code>
</pre>
【讨论】:
【参考方案3】:您可以在这里找到解决问题的方法:
https://laracasts.com/discuss/channels/general-discussion/passing-arrays-to-blade-and-iterating
或者你可以使用: echo json_encode($yourarray)
但这会将您的数组打印为 json 编码字符串。
【讨论】:
【参考方案4】:你可以使用 PHP 指令
@php
echo "<pre>";
print_r($array);
echo "</pre>";
@endphp
【讨论】:
【参考方案5】:我总是使用这种干净简单的解决方案,它使用 JSON 以格式良好的方式输出您的数组:
<pre><code> json_encode($array, JSON_PRETTY_PRINT) </code></pre>
如果您希望 JSON_PRETTY_PRINT
显示在单行上,可以删除它:
<pre><code> json_encode($array) </code></pre>
【讨论】:
【参考方案6】:最好的输出和更少的代码有 print_r() :
<pre>
print_r($array)
</pre>
【讨论】:
以上是关于如何通过 Laravel 刀片在数组内打印数组?的主要内容,如果未能解决你的问题,请参考以下文章