【问题标题】:Print multidimensional array to view file打印多维数组以查看文件
【发布时间】:2021-03-25 01:05:40
【问题描述】:

需要帮助来表示视图文件中的数组。我的代码:

@foreach($standings as $team_name => $points)
      <tr>
        <th scope="row">#</th>
           <td>{{$team_name}}</td>
           <td>{{$points}}</td>
           <td></td>
           <td></td>
           <td></td>
           <td></td>
     </tr>
@endforeach

错误信息: htmlspecialchars() 期望参数 1 是字符串,给定数组(视图:C:\laragon\www\fkbabrungas\resources\views\admin\leagues\standings.blade.php)

要在视图中打印的数组:

array:2 [▼
  "secondTeam" => & array:6 [▼
    "points" => 3
    "scoredGoals" => 3
    "goalsConceded" => 2
    "wins" => 1
    "loses" => 0
    "draws" => 0
  ]
  "firstTeam" => & array:6 [▶]
]

【问题讨论】:

  • expects parameter 1 to be string, array given 很清楚

标签: arrays laravel multidimensional-array eloquent


【解决方案1】:

你尝试的语法不正确试试这个你不能直接使用 laravel echo 方法打印数组

{{ implode(" ",$points); }}

如果你想访问数组中的单个点,你可以使用

{{$points['points']}}

【讨论】:

    【解决方案2】:

    问题在于 $points 变量是一个数组。

    你需要像下面这样访问它

    @foreach($standings as $team_name => $points)
          <tr>
            <th scope="row">#</th>
               <td>{{$team_name}}</td>
               <td>{{$points['points']}}</td>
               <td></td>
               <td></td>
               <td></td>
               <td></td>
         </tr>
    @endforeach
    

    【讨论】:

      【解决方案3】:

      它是多维嵌套数组......

      @foreach($standings as $team_name => $points)
        <tr>
          <th scope="row">#</th>
             <td>{{$team_name}}</td>
             <td>{{$points['points']}}</td>
             <td></td>
             <td></td>
             <td></td>
             <td></td>
       </tr>
      @endforeach
      

      【讨论】:

        【解决方案4】:

        您没有单个值的数组,您有一个数组数组。这个数组的每个元素都是另一个数组:

        @foreach($standings as $team_name => $data)
              <tr>
                <th scope="row">#</th>
                   <td>{{ $team_name }}</td>
                   <td>{{ $data['points'] }}</td>
                   <td>{{ $data['scoredGoals'] }}</td>
                   <td>{{ $data['goalsConceded'] }}</td>
                   <td>{{ $data['wins'] }}</td>
                   <td>{{ $data['loses'] }}</td>
                   <td>{{ $data['draws'] }}</td>
             </tr>
        @endforeach
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2015-01-12
          相关资源
          最近更新 更多