biakelly 0 Denunciar post Postado Junho 18, 2021 Oie, olha e novamente aqui rs To precisando de uma ajuda para um questão Estou pegando uma cotação do dolar de 2 sites para fazer uma média Ja consigo obter os valores e meu calculo para média é o seguinte: $dolaruol + $dolargoogle / 2 Até ai tudo certinho, mas notei que um dos sites a cotação fica fora do ar de vez em quando então se meu calculo de média pegar uma delas com valor zero, o dolar ficaria em torno dos R$2,50 e isso seria terrível. Sobre pegar média, sim, preciso de 2 preços (a história é longa rs) Pensei em fazer um IF onde pudesse determinar que se, uma das cotações estiverem fora, não faço a média e sim pego o preço de uma delas temporariamente para exibir $dolaruol $dolargoogle if ($dolaruol->is_error() == false) { $dolaruol = ($dolaruol = 0) ? '0'; } if ($dolargoogle->is_error() == false) { $dolargoogle = ($dolargoogle = 0) ? '0'; } Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Tavares 167 Denunciar post Postado Junho 18, 2021 Olá @biakelly. Você poderia fazer algo assim: $cotacao = 0; $cotacoes_utilizadas = 0; if ( $dolar_google ) { ++$cotacoes_utilizadas; $cotacao += $dolar_google; } if ( $dolar_uol ) { ++$cotacoes_utilizadas; $cotacao += $dolar_uol; } $cotacao /= $cotacoes_utilizadas;// (divisão da soma das cotações pela qtd. utilizada). Ex: 10/2 ou 5/1 Você também pode utilizar cron jobs e armazenar a cotação em cache, sempre mantendo-a a mais correta possível sem precisar fazer essa requisições em cada consulta. Compartilhar este post Link para o post Compartilhar em outros sites
biakelly 0 Denunciar post Postado Junho 18, 2021 Puxa, no alvo @Matheus Tavares Não briga comigo, mas esse ++ qual é o segredo por trás dele? Compartilhar este post Link para o post Compartilhar em outros sites
Matheus Tavares 167 Denunciar post Postado Junho 18, 2021 5 minutos atrás, biakelly disse: Não briga comigo Kkkk imagina :P 6 minutos atrás, biakelly disse: esse ++ qual é o segredo por trás dele? É um incremento. Cada vez que rodamos essa linha, a variável vai aumentar seu valor em 1. Veja no manual: https://www.php.net/manual/pt_BR/language.operators.increment.php Há uma sutil diferença entre ++$var (pré-incremento) e $var++ (pós-incremento). <?php $i = 1; echo ++$i + 10;// Resultado: 12 echo "\n"; echo $i;// 2 echo "\n\n"; $i = 1; echo $i++ + 10;// Resultado: 11 echo "\n"; echo $i;// 2 No pré-incremento, primeiro faz-se a soma, depois as demais operações. No pós-incremento, primeiro as operações são executadas, depois disso a soma. Quando utilizei apenas: ++$cotacoes_utilizadas; Ele apenas somou 1. Não há outras operações, não faria nenhuma diferença utilizar o pós-incremento: $cotacoes_utilizadas++; Que ainda seria o mesmo que: $cotacoes_utilizadas += 1; Ou ainda: $cotacoes_utilizadas = $cotacoes_utilizadas + 1; Tudo a mesma coisa :) Compartilhar este post Link para o post Compartilhar em outros sites
biakelly 0 Denunciar post Postado Junho 18, 2021 Oi @Matheus Tavares Nossa muito obrigada! Agora ficou claro como utilizo operações de incremento/decremento. Tem certeza que não é professor? Você tem muito talento Mais uma vez muito obrigada viu!!! Compartilhar este post Link para o post Compartilhar em outros sites