Как решить "count (): параметр должен быть массивом или объектом, который реализует Countable" для PHP Laravel? - PullRequest
3 голосов
/ 13 января 2020

Я хочу получить все данные о численности персонала из базы данных. А затем просмотрите детали на view.blade. php. Но когда я запускаю систему, в браузере появляется сообщение «count (): Параметр должен быть массивом или объектом, реализующим счет». Функция count () находится в моем view.blade. php для подсчета количества людей, которые принимают пакет. Нужно ли мне изменить функцию count () на что-то другое, и если я это поменяю, как мне считать людей?

Это мой контроллер

public function policyDownload(Request $request)
    {
        $package= Package::find($items["insurance_id"]);
        $items["package"] = $package;

        $headcounts = Plan::find($package["plan_id"]);
        $items["headcounts"] = $headcounts;

        return view('public.policy')->with($items);
    }

Это мой view.blade. php.

    <h6><b>Additional Person Covered(s)</b></h6>
    </b>
    <b>
    <h6>for Family Plan only</h6>
    </b>
    <br> @if (count($headcounts) > 0 )
    <table class="table table-bordered">
        <thead>
            <tr style="background-color:#d3d3d3">
                <th scope="col">MyKad/MyKid/Passport No.</th>
                <th scope="col">Fullname</th>
                <th scope="col">Age</th>
            </tr>
        </thead>
        <tbody>
            @foreach ($headcounts as $item)
            <tr>
                <td>{{strtoupper($item['nric'])}}</td>
                <td>{{strtoupper($item["name"])}}</td>
                <td>{{strtoupper($item['age'])}}</td>
            </tr>
            @endforeach
        </tbody>
    </table>
    <br><br> @else
    <br><br><br><br><br><br> @endif

1 Ответ

1 голос
/ 13 января 2020

Попробуйте использовать !empty($headcounts) вместо count($headcounts) > 0

<h6><b>Additional Person Covered(s)</b></h6></b>
<b><h6>for Family Plan only</h6></b><br> 
@if (!empty($headcounts))
    <table class="table table-bordered">
        <thead>
            <tr style="background-color:#d3d3d3">
                <th scope="col">MyKad/MyKid/Passport No.</th>
                <th scope="col">Fullname</th>
                <th scope="col">Age</th>
            </tr>
        </thead>
        <tbody>
            @foreach ($headcounts as $item)
            <tr>
                <td>{{strtoupper($item['nric'])}}</td>
                <td>{{strtoupper($item["name"])}}</td>
                <td>{{strtoupper($item['age'])}}</td>
            </tr>
            @endforeach
        </tbody>
    </table>
    <br><br> 
@else
    <br><br><br><br><br><br> 
@endif
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...