Я не хочу отображать нулевое значение в массиве, используя laravel - PullRequest
0 голосов
/ 05 августа 2020

Я пытаюсь показать значение в массиве, но все значение отображается в массиве, но мне нужно показать все эти записи, которые не являются нулевыми, как я могу удалить значение null в массиве У кого-нибудь есть идея, пожалуйста, помогите мне, спасибо.

Примечание: только я хочу получить значение, которое уже существует в базе данных, а не значения NULL [1,2,3,4,5,6,7,8, null, null, null, null]

Контроллер

 public function store(Request $request)
    {

        $project = Project::with('projectBillingInfo')->where('is_amc', 1)->get();


        foreach ($project as  $key => $value) {
            $count = 0;

            if ($value->projectBillingInfo->jan != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->feb != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->mar != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->apr != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->may != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->june != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->july != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->aug != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->sep != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->oct != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->nov != null) {

                $count = $count += 1;
            }
            if ($value->projectBillingInfo->dec != null) {

                $count = $count += 1;
            }
            
            
            $months = [
                $value->projectBillingInfo->jan,
                $value->projectBillingInfo->feb,
                $value->projectBillingInfo->mar,
                $value->projectBillingInfo->apr,
                $value->projectBillingInfo->may,
                $value->projectBillingInfo->june,
                $value->projectBillingInfo->july,
                $value->projectBillingInfo->aug,
                $value->projectBillingInfo->sep,
                $value->projectBillingInfo->oct,
                $value->projectBillingInfo->nov,
                $value->projectBillingInfo->dec,
            ];
            return $months;

            [1,2,3,4,5,6,7,8,null,null,null,null]

}

Ответы [ 2 ]

1 голос
/ 05 августа 2020

используйте array_filter()

пример :

$result = array_filter($array);

array_filter () удаляет пустые элементы массива из массива.

0 голосов
/ 05 августа 2020

на основе этого ответа :

$month=array_filter($month);

, если вы не предоставили обратный вызов для array_filter, все записи массива, равные FALSE или Null, будут удалены

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...