本文整理汇总了PHP中Number::float方法的典型用法代码示例。如果您正苦于以下问题:PHP Number::float方法的具体用法?PHP Number::float怎么用?PHP Number::float使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Number
的用法示例。
在下文中一共展示了Number::float方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: formatValue
/**
* Formata o valor
* @param mixed $value
* @param string $type
* @param boolean $formatar
* @return mixed
*/
function formatValue($value, $type, $formatar)
{
switch (strtolower($type)) {
case 'data':
case 'dt':
case 'date':
$value = Date::data((string) $value);
return $formatar ? Date::formatData($value) : $value;
break;
case 'timestamp':
case 'datatime':
$value = Date::timestamp((string) $value);
return $formatar ? Date::formatDataTime($value) : $value;
break;
case 'real':
return $formatar ? Number::real($value) : Number::float($value, 2);
case 'hide':
return $formatar ? null : $value;
break;
case 'array':
return $formatar ? stringToArray($value) : arrayToString($value);
break;
default:
return $value;
}
}
示例2: realExtenso
public static function realExtenso($valor = 0, $maiusculas = false)
{
$valor = Number::float($valor, 2);
# verifica se tem virgula decimal
if (strpos($valor, ",") > 0) {
# retira o ponto de milhar, se tiver
$valor = str_replace(".", "", $valor);
# troca a virgula decimal por ponto decimal
$valor = str_replace(",", ".", $valor);
}
$singular = array("centavo", "real", "mil", "milhão", "bilhão", "trilhão", "quatrilhão");
$plural = array("centavos", "reais", "mil", "milhões", "bilhões", "trilhões", "quatrilhões");
$c = array("", "cem", "duzentos", "trezentos", "quatrocentos", "quinhentos", "seiscentos", "setecentos", "oitocentos", "novecentos");
$d = array("", "dez", "vinte", "trinta", "quarenta", "cinquenta", "sessenta", "setenta", "oitenta", "noventa");
$d10 = array("dez", "onze", "doze", "treze", "quatorze", "quinze", "dezesseis", "dezesete", "dezoito", "dezenove");
$u = array("", "um", "dois", "três", "quatro", "cinco", "seis", "sete", "oito", "nove");
$z = 0;
$valor = number_format($valor, 2, ".", ".");
$inteiro = explode(".", $valor);
$cont = count($inteiro);
for ($i = 0; $i < $cont; $i++) {
for ($ii = strlen($inteiro[$i]); $ii < 3; $ii++) {
$inteiro[$i] = "0" . $inteiro[$i];
}
}
$fim = $cont - ($inteiro[$cont - 1] > 0 ? 1 : 2);
for ($i = 0; $i < $cont; $i++) {
$valor = $inteiro[$i];
$rc = $valor > 100 && $valor < 200 ? "cento" : $c[$valor[0]];
$rd = $valor[1] < 2 ? "" : $d[$valor[1]];
$ru = $valor > 0 ? $valor[1] == 1 ? $d10[$valor[2]] : $u[$valor[2]] : "";
$r = $rc . ($rc && ($rd || $ru) ? " e " : "") . $rd . ($rd && $ru ? " e " : "") . $ru;
$t = $cont - 1 - $i;
$r .= $r ? " " . ($valor > 1 ? $plural[$t] : $singular[$t]) : "";
if ($valor == "000") {
$z++;
} elseif ($z > 0) {
$z--;
}
if ($t == 1 && $z > 0 && $inteiro[0] > 0) {
$r .= ($z > 1 ? " de " : "") . $plural[$t];
}
if ($r) {
$rt = @$rt . ($i > 0 && $i <= $fim && $inteiro[0] > 0 && $z < 1 ? $i < $fim ? ", " : " e " : " ") . $r;
}
}
if (!$maiusculas) {
return trim($rt ? $rt : "zero");
} elseif ($maiusculas == "2") {
return trim(strtoupper($rt) ? strtoupper($rt) : "Zero");
} else {
return trim(ucwords($rt) ? ucwords($rt) : "Zero");
}
}
示例3: calcFrete
function calcFrete($cepRemetente, $cepDestinatario)
{
if (empty($this->Produtos)) {
throw new CorreiosHellperException('Nenhum produto foi adicionado para o cálculo.');
}
$calc = max(1, $this->getPeso() / 30);
$dados = ['StrRetorno' => 'xml', 'nCdEmpresa' => '', 'sDsSenha' => '', 'nVlDiametro' => 0, 'nCdServico' => '41106,40010', 'sCepOrigem' => preg_replace('/[^0-9]/', NULL, $cepRemetente), 'sCepDestino' => preg_replace('/[^0-9]/', NULL, $cepDestinatario), 'nVlComprimento' => 16, 'nVlLargura' => 11, 'nVlAltura' => 2, 'nVlPeso' => max(1, min(30, $this->getPeso())), 'nCdFormato' => 1, 'sCdMaoPropria' => 'N', 'nVlValorDeclarado' => 0, 'sCdAvisoRecebimento' => 'N'];
$url = 'http://ws.correios.com.br/calculador/CalcPrecoPrazo.aspx?' . http_build_query($dados);
if ($xml = @simplexml_load_file($url)) {
$frete = ['pac' => ['codigo' => 41106, 'cepR' => Mask::cep($cepRemetente), 'cepD' => Mask::cep($cepDestinatario), 'valor' => Number::float(Number::float($xml->cServico[0]->Valor, 2) * $calc, 2), 'prazo' => (int) $xml->cServico[0]->PrazoEntrega, 'errorCode' => (string) $xml->cServico[0]->Erro, 'error' => $this->errorMessage($xml->cServico[0]->Erro), 'errorMessage' => str_replace(' Busca CEP', ' <a href="http://www.buscacep.correios.com.br/" target="_blank" ><b>Busca CEP</b></a>', (string) $xml->cServico[1]->MsgErro)], 'sedex' => ['codigo' => 40010, 'cepR' => Mask::cep($cepRemetente), 'cepD' => Mask::cep($cepDestinatario), 'valor' => Number::float(Number::float($xml->cServico[1]->Valor, 2) * $calc, 2), 'prazo' => (int) $xml->cServico[1]->PrazoEntrega, 'errorCode' => (string) $xml->cServico[1]->Erro, 'error' => $this->errorMessage($xml->cServico[1]->Erro), 'errorMessage' => str_replace(' Busca CEP', ' <a href="http://www.buscacep.correios.com.br/" target="_blank" ><b>Busca CEP</b></a>', (string) $xml->cServico[1]->MsgErro)]];
if ($frete['pac']['error']) {
throw new CorreiosHellperException($frete['pac']['errorMessage'], (int) $frete['pac']['errorCode']);
}
return $frete;
} else {
throw new CorreiosHellperException('Não foi possível calcular o frete.', (int) '-999');
}
}
示例4: format_values
/**
*
* @param string $Table
* @param array $values
* @return array
*/
public static function format_values($Table, array $values = null)
{
if (is_null($values)) {
return $values;
} else {
foreach ($values as $key => $value) {
if (is_null($value)) {
$values[$key] = '';
}
}
}
$infoTable = self::getTableInfo($Table);
$result = [];
foreach ($infoTable as $info) {
$field = $info['Field'];
# Verificando campo
if (isset($values[$field])) {
# Valor passado
$value = $values[$field];
# Tipo de dado
$type = strtolower(current(explode('(', $info['Type'])));
# Formatando tipos de valores
if (trim($value) !== '') {
switch ($type) {
case 'date':
$value = Date::data($value);
break;
case 'tinyint':
case 'smallint':
case 'mediumint':
case 'bigint':
case 'int':
$value = Number::int($value);
break;
case 'decimal':
case 'float':
case 'double':
case 'real':
$value = Number::float($value);
break;
case 'datetime':
case 'timestamp':
$value = Date::timestamp($value);
break;
case 'time':
$value = Date::time($value);
break;
}
} else {
if ($info['Null'] == 'NO') {
$value = '';
} else {
if ($info['Null'] == 'YES') {
$value = null;
}
}
}
# Setando valor na array
$result[$field] = $value;
}
}
return $result;
}