2014-05-13 2 views
-1

제품의 백분율 할인 배지 (기존 가격과 새 가격 사이의 백분율을 자동으로 계산합니다)에 아래 코드를 추가했습니다. 그래서, 그것은 잘 동작하고 있습니다.OpenCart에서 Warning : Division을 0으로 수정하는 방법

그러나 제품에 0.00을 추가하십시오. 그래서. 오류가 발생합니다. 경고 :/home /에있는 0으로 나누십시오 ......

그래서이 오류에 대한 해결책. 어떻게 해결할 수 있습니까? 코드 아래

코드 아래

'saving' => round((($product_info['price'] - $product_info['special'])/$product_info['price'])*100, 0) 

는 .tpl 파일에

<span class="saving">-<?php echo $product['saving']; ?>%</span> 

감사를 추가 .PHP 파일에 추가합니다.

+0

가격이 0이면 우리는 100 %의 할인 혜택을 말할 수 있습니까? 0 - 0이 아닌 값은 음수를 제공하므로 'if'조건을 추가하고 100 % 할인 또는 무료로 표시하는 것이 좋습니다. –

+0

가격을 나누기 전에 가격이 0보다 큰지 확인해야합니다. –

+0

어디 보자 .. 0으로 나누지 않습니까? 그 메시지가 말하는 것처럼? 정말로 그렇게 어렵지는 않습니다. 왜 여기서 질문을하는지조차 알 수 없습니다. –

답변

2

메시지에 설명 된대로 : 0으로 나누지 마십시오. 귀하의 가격은 0입니다.

옵션 1 : 편지 기능

$array = [ 
'foo' => 'bar', 
'donald' => 'duck', 
'saving' => GetDiscount($product_info['price'], $product_info['special']) 
] 

//Get the Discount. If the Price is zero, Discount is 100 % 
function GetDiscount($price, $special) { 
    return $price === 0 ? 100 : round((($price - $special)/$price)*100, 0); 
} 

는 옵션 2 : 한 줄은

$array = [ 
'foo' => 'bar', 
'donald' => 'duck', 
'saving' => $product_info['price'] === 0 ? 100 : round((($product_info['price'] - $product_info['special'])/$product_info['price'])*100, 0) 
] 
+0

이 코드를 사용하면 오류가 발생합니다. = 구문 분석 오류 : 예기치 않은 ';', 예상 ')'C : \ .......... – HarnishDesign

+0

예, ; 결국. 수정했습니다. –

+0

이제이 오류 = 파싱 오류 : 구문 오류, 예기치 않은 T_RETURN (C : – HarnishDesign

관련 문제