我有这些使用循环条件的结果集,并将输出以下内容:
| 50,000 |
| 50,000 |
| 50,000 |
| 100,000 |
| 100,000 |
| 300,000 |
| 300,000 |
我想要发生的是将后面的数字更改为零(0),只显示唯一的值,如:
| 50,000 |
| 0 |
| 0 |
| 100,000 |
| 0 |
| 300,000 |
| 0 |
我怎么能实现这一个使用if else语句?
下面是生成结果的代码: <tbody>
<?php foreach ($borrower_details['borrower_ledger']->result_array() as $ledger) { ?>
<tr>
<td>
<?php
$query2 = $this->db->query("SELECT * FROM " .tbl_loan_master." WHERE id = ".$ledger['loanmaster_id']." AND deleted = 0");
$loan_bal = $query2->row()->loan;
echo $loan_bal;
?>
</td>
</tr>
<?php } ?>
</tbody>
从上下文中不清楚,因此可能需要放置零而不是重复非唯一值,但也许array_unique
可以帮助您?
详细阐述了答案:
-
如果您只想从值列表中收集所有唯一值-只需使用
array_unique
: a)在回显收集所有贷款值之前;2)用foreach (array_unique($loan_values) as $loan_value) ...
建立你的表 如果您想保留重复值,但将它们替换为零,则使用额外的数组来存储唯一值和
echo
: a)在foreach
之前添加$uniqueValues = [];
;b)在回显$loan_bal
之前添加以下逻辑:if (in_array($loan_bal, $ uniquevalvalues)) {$loan_bal = 0;}其他{$ uniquevalvalues [] = $loan_bal;}echo $ loan_bal;
对不起,代码格式不好,标记失败了。