家人大家好!谁能告诉我如何声明这个变量category_id_for_reports?

问题描述 投票:0回答:1

我收到错误: 严重性:广告

消息:未定义变量 $category_id_for_reports

文件名:pharmacy/financial_report.php

利涅:102

知道我用codeIgniter3在php5中编写了这个应用程序的代码,然后我将php5版本更改为php8

Voici le vue 代码(视图)

                        <?php
                        foreach ($medicines as $medicine_name) {
                            foreach ($payments as $payment) {
                                $categories_in_payment = explode(',', $payment->category_name);
                                foreach ($categories_in_payment as $category_in_payment) {
                                    $category_id = explode('*', $category_in_payment);
                                    if ($category_id[0] == $medicine_name->id) {
                                        $category_id_for_report[] = $category_id[0];
                                    }
                                }
                            }
                        }
                        $category_id_for_reports = $category_id_for_reports ? array_unique($category_id_for_report) : [];
                        ?>

                        <?php
                        foreach ($medicines as $category) {

                            if (in_array($category->id, $category_id_for_reports)) {
                                ?>
                                <tr class="">
                                    <td><?php echo $category->name ?></td>
                                    <?php
                                    foreach ($payments as $payment) {
                                        $category_names_and_amounts = $payment->category_name;
                                        $category_names_and_amounts = explode(',', $category_names_and_amounts);
                                        foreach ($category_names_and_amounts as $category_name_and_amount) {
                                            $category_name = explode('*', $category_name_and_amount);
                                            if (($category->id == $category_name[0])) {
                                                $amount_per_category[] = $category_name[1] * $category_name[2];
                                                $cost_per_category[] = $category_name[2] * $category_name[3];
                                                $quantity[] = $category_name[2];
                                            }
                                        }
                                    }
                                    ?>
                                    <td>
                                        <?php
                                        if (!empty($quantity)) {
                                            echo array_sum($quantity);
                                            $quantity[] = array_sum($quantity);
                                        } else {
                                            echo '0';
                                        }

                                        $quantity = NULL;
                                        ?>
                                    </td>
                                    <td>
                                        <?php echo $settings->currency; ?> 
                                        <?php
                                        if (!empty($cost_per_category)) {
                                            echo array_sum($cost_per_category);
                                            $total_cost_by_category[] = array_sum($cost_per_category);
                                        } else {
                                            echo '0';
                                        }

                                        $cost_per_category = NULL;
                                        ?>
                                    </td>
                                    <td>
                                        <?php echo $settings->currency; ?> 
                                        <?php
                                        if (!empty($amount_per_category)) {
                                            echo array_sum($amount_per_category);
                                            $total_payment_by_category[] = array_sum($amount_per_category);
                                        } else {
                                            echo '0';
                                        }

                                        $amount_per_category = NULL;
                                        ?>
                                    </td>
                                </tr>
                                <?php
                            }
                        }
                        ?>

                    </tbody>

我非常懂事,评论变量 $category_id_for_reports

codeigniter model-view-controller
1个回答
0
投票

您需要先声明变量,就在

foreach ($medicines as $medicine_name) 
add

之前
$category_id_for_report = []; // this line
foreach ($medicines as $medicine_name) {...

在那行之后

$category_id_for_reports = $category_id_for_reports ? array_unique($category_id_for_report) : [];
应替换为:

$category_id_for_reports = array_unique($category_id_for_report);
                   
© www.soinside.com 2019 - 2024. All rights reserved.