Deprecated: The each() function is deprecated. This message will be suppressed on further calls in /home/zhenxiangba/zhenxiangba.com/public_html/phproxy-improved-master/index.php on line 456
PHP: bcscale - Manual
[go: Go Back, main page]

PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

bcsqrt" width="11" height="7"/> <bcpowmod
Last updated: Sun, 23 Sep 2007

view this page in

bcscale

(PHP 4, PHP 5)

bcscale — すべての BC 演算関数におけるデフォルトのスケールを設定する

説明

bool bcscale ( int $scale )

デフォルトのスケールを設定します。これ以降、 BC 演算関数で明示的にスケールを指定しなかった場合にこの値を使用します。

パラメータ

scale

スケール。

返り値

成功した場合に TRUE を、失敗した場合に FALSE を返します。

例 335. bcscale() の例

<?php

// デフォルトのスケールを 3 とします
bcscale(3);
echo
bcdiv('105', '6.55957'); // 16.007

// これは、bcscale() を使用せずにおなじ結果を得ます
echo bcdiv('105', '6.55957', 3); // 16.007

?>



add a note add a note User Contributed Notes
bcscale
invincible at limitedintelligence dot com
08-Feb-2006 08:50
If you don't set the default scale, be careful when you're chaining together several BC math functions - since by default, these functions will round off your values, losing accuracy very quickly:

<?php
$a
= 1.234
$b
= 2.345
$c
= 7.890

$ab
= bcmul($a,$b);           // 2
$abc = bcmul($ab,$c);

echo
$abc;                 // 15
?>

... compare with the answer you get when you use more decimal places:

<?php
$a
= 1.234
$b
= 2.345
$c
= 7.890

bcscale
(15);
$ab = bcmul($a,$b);           // 2.893730
$abc = bcmul($ab,$c);

echo
$abc;                 // 22.83152970
?>

bcsqrt" width="11" height="7"/> <bcpowmod
Last updated: Sun, 23 Sep 2007
 
 
show source | credits | sitemap | contact | advertising | mirror sites