Differences Between: [Versions 310 and 403] [Versions 311 and 403] [Versions 39 and 403] [Versions 400 and 403] [Versions 401 and 403]
1 <?php 2 3 namespace PhpOffice\PhpSpreadsheet\Calculation; 4 5 /** 6 * @deprecated 1.18.0 7 */ 8 class MathTrig 9 { 10 /** 11 * ARABIC. 12 * 13 * Converts a Roman numeral to an Arabic numeral. 14 * 15 * Excel Function: 16 * ARABIC(text) 17 * 18 * @deprecated 1.18.0 19 * Use the evaluate method in the MathTrig\Arabic class instead 20 * @see MathTrig\Arabic::evaluate() 21 * 22 * @param array|string $roman 23 * 24 * @return array|int|string the arabic numberal contrived from the roman numeral 25 */ 26 public static function ARABIC($roman) 27 { 28 return MathTrig\Arabic::evaluate($roman); 29 } 30 31 /** 32 * ATAN2. 33 * 34 * This function calculates the arc tangent of the two variables x and y. It is similar to 35 * calculating the arc tangent of y รท x, except that the signs of both arguments are used 36 * to determine the quadrant of the result. 37 * The arctangent is the angle from the x-axis to a line containing the origin (0, 0) and a 38 * point with coordinates (xCoordinate, yCoordinate). The angle is given in radians between 39 * -pi and pi, excluding -pi. 40 * 41 * Note that the Excel ATAN2() function accepts its arguments in the reverse order to the standard 42 * PHP atan2() function, so we need to reverse them here before calling the PHP atan() function. 43 * 44 * Excel Function: 45 * ATAN2(xCoordinate,yCoordinate) 46 * 47 * @deprecated 1.18.0 48 * Use the atan2 method in the MathTrig\Trig\Tangent class instead 49 * @see MathTrig\Trig\Tangent::atan2() 50 * 51 * @param array|float $xCoordinate the x-coordinate of the point 52 * @param array|float $yCoordinate the y-coordinate of the point 53 * 54 * @return array|float|string the inverse tangent of the specified x- and y-coordinates, or a string containing an error 55 */ 56 public static function ATAN2($xCoordinate = null, $yCoordinate = null) 57 { 58 return MathTrig\Trig\Tangent::atan2($xCoordinate, $yCoordinate); 59 } 60 61 /** 62 * BASE. 63 * 64 * Converts a number into a text representation with the given radix (base). 65 * 66 * Excel Function: 67 * BASE(Number, Radix [Min_length]) 68 * 69 * @deprecated 1.18.0 70 * Use the evaluate method in the MathTrig\Base class instead 71 * @see MathTrig\Base::evaluate() 72 * 73 * @param float $number 74 * @param float $radix 75 * @param int $minLength 76 * 77 * @return array|string the text representation with the given radix (base) 78 */ 79 public static function BASE($number, $radix, $minLength = null) 80 { 81 return MathTrig\Base::evaluate($number, $radix, $minLength); 82 } 83 84 /** 85 * CEILING. 86 * 87 * Returns number rounded up, away from zero, to the nearest multiple of significance. 88 * For example, if you want to avoid using pennies in your prices and your product is 89 * priced at $4.42, use the formula =CEILING(4.42,0.05) to round prices up to the 90 * nearest nickel. 91 * 92 * Excel Function: 93 * CEILING(number[,significance]) 94 * 95 * @deprecated 1.17.0 96 * Use the ceiling() method in the MathTrig\Ceiling class instead 97 * @see MathTrig\Ceiling::ceiling() 98 * 99 * @param float $number the number you want to round 100 * @param float $significance the multiple to which you want to round 101 * 102 * @return array|float|string Rounded Number, or a string containing an error 103 */ 104 public static function CEILING($number, $significance = null) 105 { 106 return MathTrig\Ceiling::ceiling($number, $significance); 107 } 108 109 /** 110 * COMBIN. 111 * 112 * Returns the number of combinations for a given number of items. Use COMBIN to 113 * determine the total possible number of groups for a given number of items. 114 * 115 * Excel Function: 116 * COMBIN(numObjs,numInSet) 117 * 118 * @deprecated 1.18.0 119 * Use the withoutRepetition() method in the MathTrig\Combinations class instead 120 * @see MathTrig\Combinations::withoutRepetition() 121 * 122 * @param array|int $numObjs Number of different objects 123 * @param array|int $numInSet Number of objects in each combination 124 * 125 * @return array|float|int|string Number of combinations, or a string containing an error 126 */ 127 public static function COMBIN($numObjs, $numInSet) 128 { 129 return MathTrig\Combinations::withoutRepetition($numObjs, $numInSet); 130 } 131 132 /** 133 * EVEN. 134 * 135 * Returns number rounded up to the nearest even integer. 136 * You can use this function for processing items that come in twos. For example, 137 * a packing crate accepts rows of one or two items. The crate is full when 138 * the number of items, rounded up to the nearest two, matches the crate's 139 * capacity. 140 * 141 * Excel Function: 142 * EVEN(number) 143 * 144 * @deprecated 1.18.0 145 * Use the even() method in the MathTrig\Round class instead 146 * @see MathTrig\Round::even() 147 * 148 * @param array|float $number Number to round 149 * 150 * @return array|float|int|string Rounded Number, or a string containing an error 151 */ 152 public static function EVEN($number) 153 { 154 return MathTrig\Round::even($number); 155 } 156 157 /** 158 * Helper function for Even. 159 * 160 * @deprecated 1.18.0 161 * Use the evaluate() method in the MathTrig\Helpers class instead 162 * @see MathTrig\Helpers::getEven() 163 */ 164 public static function getEven(float $number): int 165 { 166 return (int) MathTrig\Helpers::getEven($number); 167 } 168 169 /** 170 * FACT. 171 * 172 * Returns the factorial of a number. 173 * The factorial of a number is equal to 1*2*3*...* number. 174 * 175 * Excel Function: 176 * FACT(factVal) 177 * 178 * @deprecated 1.18.0 179 * Use the fact() method in the MathTrig\Factorial class instead 180 * @see MathTrig\Factorial::fact() 181 * 182 * @param array|float $factVal Factorial Value 183 * 184 * @return array|float|int|string Factorial, or a string containing an error 185 */ 186 public static function FACT($factVal) 187 { 188 return MathTrig\Factorial::fact($factVal); 189 } 190 191 /** 192 * FACTDOUBLE. 193 * 194 * Returns the double factorial of a number. 195 * 196 * Excel Function: 197 * FACTDOUBLE(factVal) 198 * 199 * @deprecated 1.18.0 200 * Use the factDouble() method in the MathTrig\Factorial class instead 201 * @see MathTrig\Factorial::factDouble() 202 * 203 * @param array|float $factVal Factorial Value 204 * 205 * @return array|float|int|string Double Factorial, or a string containing an error 206 */ 207 public static function FACTDOUBLE($factVal) 208 { 209 return MathTrig\Factorial::factDouble($factVal); 210 } 211 212 /** 213 * FLOOR. 214 * 215 * Rounds number down, toward zero, to the nearest multiple of significance. 216 * 217 * Excel Function: 218 * FLOOR(number[,significance]) 219 * 220 * @deprecated 1.17.0 221 * Use the floor() method in the MathTrig\Floor class instead 222 * @see MathTrig\Floor::floor() 223 * 224 * @param float $number Number to round 225 * @param float $significance Significance 226 * 227 * @return array|float|string Rounded Number, or a string containing an error 228 */ 229 public static function FLOOR($number, $significance = null) 230 { 231 return MathTrig\Floor::floor($number, $significance); 232 } 233 234 /** 235 * FLOOR.MATH. 236 * 237 * Round a number down to the nearest integer or to the nearest multiple of significance. 238 * 239 * Excel Function: 240 * FLOOR.MATH(number[,significance[,mode]]) 241 * 242 * @deprecated 1.17.0 243 * Use the math() method in the MathTrig\Floor class instead 244 * @see MathTrig\Floor::math() 245 * 246 * @param float $number Number to round 247 * @param float $significance Significance 248 * @param int $mode direction to round negative numbers 249 * 250 * @return array|float|string Rounded Number, or a string containing an error 251 */ 252 public static function FLOORMATH($number, $significance = null, $mode = 0) 253 { 254 return MathTrig\Floor::math($number, $significance, $mode); 255 } 256 257 /** 258 * FLOOR.PRECISE. 259 * 260 * Rounds number down, toward zero, to the nearest multiple of significance. 261 * 262 * Excel Function: 263 * FLOOR.PRECISE(number[,significance]) 264 * 265 * @deprecated 1.17.0 266 * Use the precise() method in the MathTrig\Floor class instead 267 * @see MathTrig\Floor::precise() 268 * 269 * @param float $number Number to round 270 * @param float $significance Significance 271 * 272 * @return array|float|string Rounded Number, or a string containing an error 273 */ 274 public static function FLOORPRECISE($number, $significance = 1) 275 { 276 return MathTrig\Floor::precise($number, $significance); 277 } 278 279 /** 280 * INT. 281 * 282 * Casts a floating point value to an integer 283 * 284 * Excel Function: 285 * INT(number) 286 * 287 * @deprecated 1.17.0 288 * Use the evaluate() method in the MathTrig\IntClass class instead 289 * @see MathTrig\IntClass::evaluate() 290 * 291 * @param array|float $number Number to cast to an integer 292 * 293 * @return array|int|string Integer value, or a string containing an error 294 */ 295 public static function INT($number) 296 { 297 return MathTrig\IntClass::evaluate($number); 298 } 299 300 /** 301 * GCD. 302 * 303 * Returns the greatest common divisor of a series of numbers. 304 * The greatest common divisor is the largest integer that divides both 305 * number1 and number2 without a remainder. 306 * 307 * Excel Function: 308 * GCD(number1[,number2[, ...]]) 309 * 310 * @deprecated 1.18.0 311 * Use the evaluate() method in the MathTrig\Gcd class instead 312 * @see MathTrig\Gcd::evaluate() 313 * 314 * @param mixed ...$args Data values 315 * 316 * @return int|mixed|string Greatest Common Divisor, or a string containing an error 317 */ 318 public static function GCD(...$args) 319 { 320 return MathTrig\Gcd::evaluate(...$args); 321 } 322 323 /** 324 * LCM. 325 * 326 * Returns the lowest common multiplier of a series of numbers 327 * The least common multiple is the smallest positive integer that is a multiple 328 * of all integer arguments number1, number2, and so on. Use LCM to add fractions 329 * with different denominators. 330 * 331 * Excel Function: 332 * LCM(number1[,number2[, ...]]) 333 * 334 * @deprecated 1.18.0 335 * Use the evaluate() method in the MathTrig\Lcm class instead 336 * @see MathTrig\Lcm::evaluate() 337 * 338 * @param mixed ...$args Data values 339 * 340 * @return int|string Lowest Common Multiplier, or a string containing an error 341 */ 342 public static function LCM(...$args) 343 { 344 return MathTrig\Lcm::evaluate(...$args); 345 } 346 347 /** 348 * LOG_BASE. 349 * 350 * Returns the logarithm of a number to a specified base. The default base is 10. 351 * 352 * Excel Function: 353 * LOG(number[,base]) 354 * 355 * @deprecated 1.18.0 356 * Use the withBase() method in the MathTrig\Logarithms class instead 357 * @see MathTrig\Logarithms::withBase() 358 * 359 * @param float $number The positive real number for which you want the logarithm 360 * @param float $base The base of the logarithm. If base is omitted, it is assumed to be 10. 361 * 362 * @return array|float|string The result, or a string containing an error 363 */ 364 public static function logBase($number, $base = 10) 365 { 366 return MathTrig\Logarithms::withBase($number, $base); 367 } 368 369 /** 370 * MDETERM. 371 * 372 * Returns the matrix determinant of an array. 373 * 374 * Excel Function: 375 * MDETERM(array) 376 * 377 * @deprecated 1.18.0 378 * Use the determinant() method in the MathTrig\MatrixFunctions class instead 379 * @see MathTrig\MatrixFunctions::determinant() 380 * 381 * @param array $matrixValues A matrix of values 382 * 383 * @return float|string The result, or a string containing an error 384 */ 385 public static function MDETERM($matrixValues) 386 { 387 return MathTrig\MatrixFunctions::determinant($matrixValues); 388 } 389 390 /** 391 * MINVERSE. 392 * 393 * Returns the inverse matrix for the matrix stored in an array. 394 * 395 * Excel Function: 396 * MINVERSE(array) 397 * 398 * @deprecated 1.18.0 399 * Use the inverse() method in the MathTrig\MatrixFunctions class instead 400 * @see MathTrig\MatrixFunctions::inverse() 401 * 402 * @param array $matrixValues A matrix of values 403 * 404 * @return array|string The result, or a string containing an error 405 */ 406 public static function MINVERSE($matrixValues) 407 { 408 return MathTrig\MatrixFunctions::inverse($matrixValues); 409 } 410 411 /** 412 * MMULT. 413 * 414 * @deprecated 1.18.0 415 * Use the multiply() method in the MathTrig\MatrixFunctions class instead 416 * @see MathTrig\MatrixFunctions::multiply() 417 * 418 * @param array $matrixData1 A matrix of values 419 * @param array $matrixData2 A matrix of values 420 * 421 * @return array|string The result, or a string containing an error 422 */ 423 public static function MMULT($matrixData1, $matrixData2) 424 { 425 return MathTrig\MatrixFunctions::multiply($matrixData1, $matrixData2); 426 } 427 428 /** 429 * MOD. 430 * 431 * @deprecated 1.18.0 432 * Use the mod() method in the MathTrig\Operations class instead 433 * @see MathTrig\Operations::mod() 434 * 435 * @param int $a Dividend 436 * @param int $b Divisor 437 * 438 * @return array|float|int|string Remainder, or a string containing an error 439 */ 440 public static function MOD($a = 1, $b = 1) 441 { 442 return MathTrig\Operations::mod($a, $b); 443 } 444 445 /** 446 * MROUND. 447 * 448 * Rounds a number to the nearest multiple of a specified value 449 * 450 * @deprecated 1.17.0 451 * Use the multiple() method in the MathTrig\Mround class instead 452 * @see MathTrig\Round::multiple() 453 * 454 * @param float $number Number to round 455 * @param array|int $multiple Multiple to which you want to round $number 456 * 457 * @return array|float|string Rounded Number, or a string containing an error 458 */ 459 public static function MROUND($number, $multiple) 460 { 461 return MathTrig\Round::multiple($number, $multiple); 462 } 463 464 /** 465 * MULTINOMIAL. 466 * 467 * Returns the ratio of the factorial of a sum of values to the product of factorials. 468 * 469 * @deprecated 1.18.0 470 * Use the multinomial method in the MathTrig\Factorial class instead 471 * @see MathTrig\Factorial::multinomial() 472 * 473 * @param mixed[] $args An array of mixed values for the Data Series 474 * 475 * @return float|string The result, or a string containing an error 476 */ 477 public static function MULTINOMIAL(...$args) 478 { 479 return MathTrig\Factorial::multinomial(...$args); 480 } 481 482 /** 483 * ODD. 484 * 485 * Returns number rounded up to the nearest odd integer. 486 * 487 * @deprecated 1.18.0 488 * Use the odd method in the MathTrig\Round class instead 489 * @see MathTrig\Round::odd() 490 * 491 * @param array|float $number Number to round 492 * 493 * @return array|float|int|string Rounded Number, or a string containing an error 494 */ 495 public static function ODD($number) 496 { 497 return MathTrig\Round::odd($number); 498 } 499 500 /** 501 * POWER. 502 * 503 * Computes x raised to the power y. 504 * 505 * @deprecated 1.18.0 506 * Use the evaluate method in the MathTrig\Power class instead 507 * @see MathTrig\Operations::power() 508 * 509 * @param float $x 510 * @param float $y 511 * 512 * @return array|float|int|string The result, or a string containing an error 513 */ 514 public static function POWER($x = 0, $y = 2) 515 { 516 return MathTrig\Operations::power($x, $y); 517 } 518 519 /** 520 * PRODUCT. 521 * 522 * PRODUCT returns the product of all the values and cells referenced in the argument list. 523 * 524 * @deprecated 1.18.0 525 * Use the product method in the MathTrig\Operations class instead 526 * @see MathTrig\Operations::product() 527 * 528 * Excel Function: 529 * PRODUCT(value1[,value2[, ...]]) 530 * 531 * @param mixed ...$args Data values 532 * 533 * @return float|string 534 */ 535 public static function PRODUCT(...$args) 536 { 537 return MathTrig\Operations::product(...$args); 538 } 539 540 /** 541 * QUOTIENT. 542 * 543 * QUOTIENT function returns the integer portion of a division. Numerator is the divided number 544 * and denominator is the divisor. 545 * 546 * @deprecated 1.18.0 547 * Use the quotient method in the MathTrig\Operations class instead 548 * @see MathTrig\Operations::quotient() 549 * 550 * Excel Function: 551 * QUOTIENT(value1[,value2[, ...]]) 552 * 553 * @param mixed $numerator 554 * @param mixed $denominator 555 * 556 * @return array|int|string 557 */ 558 public static function QUOTIENT($numerator, $denominator) 559 { 560 return MathTrig\Operations::quotient($numerator, $denominator); 561 } 562 563 /** 564 * RAND/RANDBETWEEN. 565 * 566 * @deprecated 1.18.0 567 * Use the randBetween or randBetween method in the MathTrig\Random class instead 568 * @see MathTrig\Random::randBetween() 569 * 570 * @param int $min Minimal value 571 * @param int $max Maximal value 572 * 573 * @return array|float|int|string Random number 574 */ 575 public static function RAND($min = 0, $max = 0) 576 { 577 return MathTrig\Random::randBetween($min, $max); 578 } 579 580 /** 581 * ROMAN. 582 * 583 * Converts a number to Roman numeral 584 * 585 * @deprecated 1.17.0 586 * Use the evaluate() method in the MathTrig\Roman class instead 587 * @see MathTrig\Roman::evaluate() 588 * 589 * @param mixed $aValue Number to convert 590 * @param mixed $style Number indicating one of five possible forms 591 * 592 * @return array|string Roman numeral, or a string containing an error 593 */ 594 public static function ROMAN($aValue, $style = 0) 595 { 596 return MathTrig\Roman::evaluate($aValue, $style); 597 } 598 599 /** 600 * ROUNDUP. 601 * 602 * Rounds a number up to a specified number of decimal places 603 * 604 * @deprecated 1.17.0 605 * Use the up() method in the MathTrig\Round class instead 606 * @see MathTrig\Round::up() 607 * 608 * @param array|float $number Number to round 609 * @param array|int $digits Number of digits to which you want to round $number 610 * 611 * @return array|float|string Rounded Number, or a string containing an error 612 */ 613 public static function ROUNDUP($number, $digits) 614 { 615 return MathTrig\Round::up($number, $digits); 616 } 617 618 /** 619 * ROUNDDOWN. 620 * 621 * Rounds a number down to a specified number of decimal places 622 * 623 * @deprecated 1.17.0 624 * Use the down() method in the MathTrig\Round class instead 625 * @see MathTrig\Round::down() 626 * 627 * @param array|float $number Number to round 628 * @param array|int $digits Number of digits to which you want to round $number 629 * 630 * @return array|float|string Rounded Number, or a string containing an error 631 */ 632 public static function ROUNDDOWN($number, $digits) 633 { 634 return MathTrig\Round::down($number, $digits); 635 } 636 637 /** 638 * SERIESSUM. 639 * 640 * Returns the sum of a power series 641 * 642 * @deprecated 1.18.0 643 * Use the evaluate method in the MathTrig\SeriesSum class instead 644 * @see MathTrig\SeriesSum::evaluate() 645 * 646 * @param mixed $x Input value 647 * @param mixed $n Initial power 648 * @param mixed $m Step 649 * @param mixed[] $args An array of coefficients for the Data Series 650 * 651 * @return array|float|string The result, or a string containing an error 652 */ 653 public static function SERIESSUM($x, $n, $m, ...$args) 654 { 655 return MathTrig\SeriesSum::evaluate($x, $n, $m, ...$args); 656 } 657 658 /** 659 * SIGN. 660 * 661 * Determines the sign of a number. Returns 1 if the number is positive, zero (0) 662 * if the number is 0, and -1 if the number is negative. 663 * 664 * @deprecated 1.18.0 665 * Use the evaluate method in the MathTrig\Sign class instead 666 * @see MathTrig\Sign::evaluate() 667 * 668 * @param array|float $number Number to round 669 * 670 * @return array|int|string sign value, or a string containing an error 671 */ 672 public static function SIGN($number) 673 { 674 return MathTrig\Sign::evaluate($number); 675 } 676 677 /** 678 * returnSign = returns 0/-1/+1. 679 * 680 * @deprecated 1.18.0 681 * Use the returnSign method in the MathTrig\Helpers class instead 682 * @see MathTrig\Helpers::returnSign() 683 */ 684 public static function returnSign(float $number): int 685 { 686 return MathTrig\Helpers::returnSign($number); 687 } 688 689 /** 690 * SQRTPI. 691 * 692 * Returns the square root of (number * pi). 693 * 694 * @deprecated 1.18.0 695 * Use the pi method in the MathTrig\Sqrt class instead 696 * @see MathTrig\Sqrt::sqrt() 697 * 698 * @param array|float $number Number 699 * 700 * @return array|float|string Square Root of Number * Pi, or a string containing an error 701 */ 702 public static function SQRTPI($number) 703 { 704 return MathTrig\Sqrt::pi($number); 705 } 706 707 /** 708 * SUBTOTAL. 709 * 710 * Returns a subtotal in a list or database. 711 * 712 * @deprecated 1.18.0 713 * Use the evaluate method in the MathTrig\Subtotal class instead 714 * @see MathTrig\Subtotal::evaluate() 715 * 716 * @param int $functionType 717 * A number 1 to 11 that specifies which function to 718 * use in calculating subtotals within a range 719 * list 720 * Numbers 101 to 111 shadow the functions of 1 to 11 721 * but ignore any values in the range that are 722 * in hidden rows or columns 723 * @param mixed[] $args A mixed data series of values 724 * 725 * @return float|string 726 */ 727 public static function SUBTOTAL($functionType, ...$args) 728 { 729 return MathTrig\Subtotal::evaluate($functionType, ...$args); 730 } 731 732 /** 733 * SUM. 734 * 735 * SUM computes the sum of all the values and cells referenced in the argument list. 736 * 737 * @deprecated 1.18.0 738 * Use the sumErroringStrings method in the MathTrig\Sum class instead 739 * @see MathTrig\Sum::sumErroringStrings() 740 * 741 * Excel Function: 742 * SUM(value1[,value2[, ...]]) 743 * 744 * @param mixed ...$args Data values 745 * 746 * @return float|string 747 */ 748 public static function SUM(...$args) 749 { 750 return MathTrig\Sum::sumIgnoringStrings(...$args); 751 } 752 753 /** 754 * SUMIF. 755 * 756 * Totals the values of cells that contain numbers within the list of arguments 757 * 758 * Excel Function: 759 * SUMIF(range, criteria, [sum_range]) 760 * 761 * @deprecated 1.17.0 762 * Use the SUMIF() method in the Statistical\Conditional class instead 763 * @see Statistical\Conditional::SUMIF() 764 * 765 * @param mixed $range Data values 766 * @param string $criteria the criteria that defines which cells will be summed 767 * @param mixed $sumRange 768 * 769 * @return null|float|string 770 */ 771 public static function SUMIF($range, $criteria, $sumRange = []) 772 { 773 return Statistical\Conditional::SUMIF($range, $criteria, $sumRange); 774 } 775 776 /** 777 * SUMIFS. 778 * 779 * Totals the values of cells that contain numbers within the list of arguments 780 * 781 * Excel Function: 782 * SUMIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...) 783 * 784 * @deprecated 1.17.0 785 * Use the SUMIFS() method in the Statistical\Conditional class instead 786 * @see Statistical\Conditional::SUMIFS() 787 * 788 * @param mixed $args Data values 789 * 790 * @return null|float|string 791 */ 792 public static function SUMIFS(...$args) 793 { 794 return Statistical\Conditional::SUMIFS(...$args); 795 } 796 797 /** 798 * SUMPRODUCT. 799 * 800 * Excel Function: 801 * SUMPRODUCT(value1[,value2[, ...]]) 802 * 803 * @deprecated 1.18.0 804 * Use the product method in the MathTrig\Sum class instead 805 * @see MathTrig\Sum::product() 806 * 807 * @param mixed ...$args Data values 808 * 809 * @return float|string The result, or a string containing an error 810 */ 811 public static function SUMPRODUCT(...$args) 812 { 813 return MathTrig\Sum::product(...$args); 814 } 815 816 /** 817 * SUMSQ. 818 * 819 * SUMSQ returns the sum of the squares of the arguments 820 * 821 * @deprecated 1.18.0 822 * Use the sumSquare method in the MathTrig\SumSquares class instead 823 * @see MathTrig\SumSquares::sumSquare() 824 * 825 * Excel Function: 826 * SUMSQ(value1[,value2[, ...]]) 827 * 828 * @param mixed ...$args Data values 829 * 830 * @return float|string 831 */ 832 public static function SUMSQ(...$args) 833 { 834 return MathTrig\SumSquares::sumSquare(...$args); 835 } 836 837 /** 838 * SUMX2MY2. 839 * 840 * @deprecated 1.18.0 841 * Use the sumXSquaredMinusYSquared method in the MathTrig\SumSquares class instead 842 * @see MathTrig\SumSquares::sumXSquaredMinusYSquared() 843 * 844 * @param mixed[] $matrixData1 Matrix #1 845 * @param mixed[] $matrixData2 Matrix #2 846 * 847 * @return float|string 848 */ 849 public static function SUMX2MY2($matrixData1, $matrixData2) 850 { 851 return MathTrig\SumSquares::sumXSquaredMinusYSquared($matrixData1, $matrixData2); 852 } 853 854 /** 855 * SUMX2PY2. 856 * 857 * @deprecated 1.18.0 858 * Use the sumXSquaredPlusYSquared method in the MathTrig\SumSquares class instead 859 * @see MathTrig\SumSquares::sumXSquaredPlusYSquared() 860 * 861 * @param mixed[] $matrixData1 Matrix #1 862 * @param mixed[] $matrixData2 Matrix #2 863 * 864 * @return float|string 865 */ 866 public static function SUMX2PY2($matrixData1, $matrixData2) 867 { 868 return MathTrig\SumSquares::sumXSquaredPlusYSquared($matrixData1, $matrixData2); 869 } 870 871 /** 872 * SUMXMY2. 873 * 874 * @deprecated 1.18.0 875 * Use the sumXMinusYSquared method in the MathTrig\SumSquares class instead 876 * @see MathTrig\SumSquares::sumXMinusYSquared() 877 * 878 * @param mixed[] $matrixData1 Matrix #1 879 * @param mixed[] $matrixData2 Matrix #2 880 * 881 * @return float|string 882 */ 883 public static function SUMXMY2($matrixData1, $matrixData2) 884 { 885 return MathTrig\SumSquares::sumXMinusYSquared($matrixData1, $matrixData2); 886 } 887 888 /** 889 * TRUNC. 890 * 891 * Truncates value to the number of fractional digits by number_digits. 892 * 893 * @deprecated 1.17.0 894 * Use the evaluate() method in the MathTrig\Trunc class instead 895 * @see MathTrig\Trunc::evaluate() 896 * 897 * @param float $value 898 * @param int $digits 899 * 900 * @return array|float|string Truncated value, or a string containing an error 901 */ 902 public static function TRUNC($value = 0, $digits = 0) 903 { 904 return MathTrig\Trunc::evaluate($value, $digits); 905 } 906 907 /** 908 * SEC. 909 * 910 * Returns the secant of an angle. 911 * 912 * @deprecated 1.18.0 913 * Use the sec method in the MathTrig\Trig\Secant class instead 914 * @see MathTrig\Trig\Secant::sec() 915 * 916 * @param array|float $angle Number 917 * 918 * @return array|float|string The secant of the angle 919 */ 920 public static function SEC($angle) 921 { 922 return MathTrig\Trig\Secant::sec($angle); 923 } 924 925 /** 926 * SECH. 927 * 928 * Returns the hyperbolic secant of an angle. 929 * 930 * @deprecated 1.18.0 931 * Use the sech method in the MathTrig\Trig\Secant class instead 932 * @see MathTrig\Trig\Secant::sech() 933 * 934 * @param array|float $angle Number 935 * 936 * @return array|float|string The hyperbolic secant of the angle 937 */ 938 public static function SECH($angle) 939 { 940 return MathTrig\Trig\Secant::sech($angle); 941 } 942 943 /** 944 * CSC. 945 * 946 * Returns the cosecant of an angle. 947 * 948 * @deprecated 1.18.0 949 * Use the csc method in the MathTrig\Trig\Cosecant class instead 950 * @see MathTrig\Trig\Cosecant::csc() 951 * 952 * @param array|float $angle Number 953 * 954 * @return array|float|string The cosecant of the angle 955 */ 956 public static function CSC($angle) 957 { 958 return MathTrig\Trig\Cosecant::csc($angle); 959 } 960 961 /** 962 * CSCH. 963 * 964 * Returns the hyperbolic cosecant of an angle. 965 * 966 * @deprecated 1.18.0 967 * Use the csch method in the MathTrig\Trig\Cosecant class instead 968 * @see MathTrig\Trig\Cosecant::csch() 969 * 970 * @param array|float $angle Number 971 * 972 * @return array|float|string The hyperbolic cosecant of the angle 973 */ 974 public static function CSCH($angle) 975 { 976 return MathTrig\Trig\Cosecant::csch($angle); 977 } 978 979 /** 980 * COT. 981 * 982 * Returns the cotangent of an angle. 983 * 984 * @deprecated 1.18.0 985 * Use the cot method in the MathTrig\Trig\Cotangent class instead 986 * @see MathTrig\Trig\Cotangent::cot() 987 * 988 * @param array|float $angle Number 989 * 990 * @return array|float|string The cotangent of the angle 991 */ 992 public static function COT($angle) 993 { 994 return MathTrig\Trig\Cotangent::cot($angle); 995 } 996 997 /** 998 * COTH. 999 * 1000 * Returns the hyperbolic cotangent of an angle. 1001 * 1002 * @deprecated 1.18.0 1003 * Use the coth method in the MathTrig\Trig\Cotangent class instead 1004 * @see MathTrig\Trig\Cotangent::coth() 1005 * 1006 * @param array|float $angle Number 1007 * 1008 * @return array|float|string The hyperbolic cotangent of the angle 1009 */ 1010 public static function COTH($angle) 1011 { 1012 return MathTrig\Trig\Cotangent::coth($angle); 1013 } 1014 1015 /** 1016 * ACOT. 1017 * 1018 * Returns the arccotangent of a number. 1019 * 1020 * @deprecated 1.18.0 1021 * Use the acot method in the MathTrig\Trig\Cotangent class instead 1022 * @see MathTrig\Trig\Cotangent::acot() 1023 * 1024 * @param array|float $number Number 1025 * 1026 * @return array|float|string The arccotangent of the number 1027 */ 1028 public static function ACOT($number) 1029 { 1030 return MathTrig\Trig\Cotangent::acot($number); 1031 } 1032 1033 /** 1034 * Return NAN or value depending on argument. 1035 * 1036 * @deprecated 1.18.0 1037 * Use the numberOrNan method in the MathTrig\Helpers class instead 1038 * @see MathTrig\Helpers::numberOrNan() 1039 * 1040 * @param float $result Number 1041 * 1042 * @return float|string 1043 */ 1044 public static function numberOrNan($result) 1045 { 1046 return MathTrig\Helpers::numberOrNan($result); 1047 } 1048 1049 /** 1050 * ACOTH. 1051 * 1052 * Returns the hyperbolic arccotangent of a number. 1053 * 1054 * @deprecated 1.18.0 1055 * Use the acoth method in the MathTrig\Trig\Cotangent class instead 1056 * @see MathTrig\Trig\Cotangent::acoth() 1057 * 1058 * @param array|float $number Number 1059 * 1060 * @return array|float|string The hyperbolic arccotangent of the number 1061 */ 1062 public static function ACOTH($number) 1063 { 1064 return MathTrig\Trig\Cotangent::acoth($number); 1065 } 1066 1067 /** 1068 * ROUND. 1069 * 1070 * Returns the result of builtin function round after validating args. 1071 * 1072 * @deprecated 1.17.0 1073 * Use the round() method in the MathTrig\Round class instead 1074 * @see MathTrig\Round::round() 1075 * 1076 * @param array|mixed $number Should be numeric 1077 * @param array|mixed $precision Should be int 1078 * 1079 * @return array|float|string Rounded number 1080 */ 1081 public static function builtinROUND($number, $precision) 1082 { 1083 return MathTrig\Round::round($number, $precision); 1084 } 1085 1086 /** 1087 * ABS. 1088 * 1089 * Returns the result of builtin function abs after validating args. 1090 * 1091 * @deprecated 1.18.0 1092 * Use the evaluate method in the MathTrig\Absolute class instead 1093 * @see MathTrig\Absolute::evaluate() 1094 * 1095 * @param array|mixed $number Should be numeric 1096 * 1097 * @return array|float|int|string Rounded number 1098 */ 1099 public static function builtinABS($number) 1100 { 1101 return MathTrig\Absolute::evaluate($number); 1102 } 1103 1104 /** 1105 * ACOS. 1106 * 1107 * @deprecated 1.18.0 1108 * Use the acos method in the MathTrig\Trig\Cosine class instead 1109 * @see MathTrig\Trig\Cosine::acos() 1110 * 1111 * Returns the result of builtin function acos after validating args. 1112 * 1113 * @param array|float $number Should be numeric 1114 * 1115 * @return array|float|string Rounded number 1116 */ 1117 public static function builtinACOS($number) 1118 { 1119 return MathTrig\Trig\Cosine::acos($number); 1120 } 1121 1122 /** 1123 * ACOSH. 1124 * 1125 * Returns the result of builtin function acosh after validating args. 1126 * 1127 * @deprecated 1.18.0 1128 * Use the acosh method in the MathTrig\Trig\Cosine class instead 1129 * @see MathTrig\Trig\Cosine::acosh() 1130 * 1131 * @param array|float $number Should be numeric 1132 * 1133 * @return array|float|string Rounded number 1134 */ 1135 public static function builtinACOSH($number) 1136 { 1137 return MathTrig\Trig\Cosine::acosh($number); 1138 } 1139 1140 /** 1141 * ASIN. 1142 * 1143 * Returns the result of builtin function asin after validating args. 1144 * 1145 * @deprecated 1.18.0 1146 * Use the asin method in the MathTrig\Trig\Sine class instead 1147 * @see MathTrig\Trig\Sine::asin() 1148 * 1149 * @param array|float $number Should be numeric 1150 * 1151 * @return array|float|string Rounded number 1152 */ 1153 public static function builtinASIN($number) 1154 { 1155 return MathTrig\Trig\Sine::asin($number); 1156 } 1157 1158 /** 1159 * ASINH. 1160 * 1161 * Returns the result of builtin function asinh after validating args. 1162 * 1163 * @deprecated 1.18.0 1164 * Use the asinh method in the MathTrig\Trig\Sine class instead 1165 * @see MathTrig\Trig\Sine::asinh() 1166 * 1167 * @param array|float $number Should be numeric 1168 * 1169 * @return array|float|string Rounded number 1170 */ 1171 public static function builtinASINH($number) 1172 { 1173 return MathTrig\Trig\Sine::asinh($number); 1174 } 1175 1176 /** 1177 * ATAN. 1178 * 1179 * Returns the result of builtin function atan after validating args. 1180 * 1181 * @deprecated 1.18.0 1182 * Use the atan method in the MathTrig\Trig\Tangent class instead 1183 * @see MathTrig\Trig\Tangent::atan() 1184 * 1185 * @param array|float $number Should be numeric 1186 * 1187 * @return array|float|string Rounded number 1188 */ 1189 public static function builtinATAN($number) 1190 { 1191 return MathTrig\Trig\Tangent::atan($number); 1192 } 1193 1194 /** 1195 * ATANH. 1196 * 1197 * Returns the result of builtin function atanh after validating args. 1198 * 1199 * @deprecated 1.18.0 1200 * Use the atanh method in the MathTrig\Trig\Tangent class instead 1201 * @see MathTrig\Trig\Tangent::atanh() 1202 * 1203 * @param array|float $number Should be numeric 1204 * 1205 * @return array|float|string Rounded number 1206 */ 1207 public static function builtinATANH($number) 1208 { 1209 return MathTrig\Trig\Tangent::atanh($number); 1210 } 1211 1212 /** 1213 * COS. 1214 * 1215 * Returns the result of builtin function cos after validating args. 1216 * 1217 * @deprecated 1.18.0 1218 * Use the cos method in the MathTrig\Trig\Cosine class instead 1219 * @see MathTrig\Trig\Cosine::cos() 1220 * 1221 * @param array|mixed $number Should be numeric 1222 * 1223 * @return array|float|string Rounded number 1224 */ 1225 public static function builtinCOS($number) 1226 { 1227 return MathTrig\Trig\Cosine::cos($number); 1228 } 1229 1230 /** 1231 * COSH. 1232 * 1233 * Returns the result of builtin function cos after validating args. 1234 * 1235 * @deprecated 1.18.0 1236 * Use the cosh method in the MathTrig\Trig\Cosine class instead 1237 * @see MathTrig\Trig\Cosine::cosh() 1238 * 1239 * @param array|mixed $number Should be numeric 1240 * 1241 * @return array|float|string Rounded number 1242 */ 1243 public static function builtinCOSH($number) 1244 { 1245 return MathTrig\Trig\Cosine::cosh($number); 1246 } 1247 1248 /** 1249 * DEGREES. 1250 * 1251 * Returns the result of builtin function rad2deg after validating args. 1252 * 1253 * @deprecated 1.18.0 1254 * Use the toDegrees method in the MathTrig\Angle class instead 1255 * @see MathTrig\Angle::toDegrees() 1256 * 1257 * @param array|mixed $number Should be numeric 1258 * 1259 * @return array|float|string Rounded number 1260 */ 1261 public static function builtinDEGREES($number) 1262 { 1263 return MathTrig\Angle::toDegrees($number); 1264 } 1265 1266 /** 1267 * EXP. 1268 * 1269 * Returns the result of builtin function exp after validating args. 1270 * 1271 * @deprecated 1.18.0 1272 * Use the evaluate method in the MathTrig\Exp class instead 1273 * @see MathTrig\Exp::evaluate() 1274 * 1275 * @param array|mixed $number Should be numeric 1276 * 1277 * @return array|float|string Rounded number 1278 */ 1279 public static function builtinEXP($number) 1280 { 1281 return MathTrig\Exp::evaluate($number); 1282 } 1283 1284 /** 1285 * LN. 1286 * 1287 * Returns the result of builtin function log after validating args. 1288 * 1289 * @deprecated 1.18.0 1290 * Use the natural method in the MathTrig\Logarithms class instead 1291 * @see MathTrig\Logarithms::natural() 1292 * 1293 * @param mixed $number Should be numeric 1294 * 1295 * @return array|float|string Rounded number 1296 */ 1297 public static function builtinLN($number) 1298 { 1299 return MathTrig\Logarithms::natural($number); 1300 } 1301 1302 /** 1303 * LOG10. 1304 * 1305 * Returns the result of builtin function log after validating args. 1306 * 1307 * @deprecated 1.18.0 1308 * Use the natural method in the MathTrig\Logarithms class instead 1309 * @see MathTrig\Logarithms::base10() 1310 * 1311 * @param mixed $number Should be numeric 1312 * 1313 * @return array|float|string Rounded number 1314 */ 1315 public static function builtinLOG10($number) 1316 { 1317 return MathTrig\Logarithms::base10($number); 1318 } 1319 1320 /** 1321 * RADIANS. 1322 * 1323 * Returns the result of builtin function deg2rad after validating args. 1324 * 1325 * @deprecated 1.18.0 1326 * Use the toRadians method in the MathTrig\Angle class instead 1327 * @see MathTrig\Angle::toRadians() 1328 * 1329 * @param array|mixed $number Should be numeric 1330 * 1331 * @return array|float|string Rounded number 1332 */ 1333 public static function builtinRADIANS($number) 1334 { 1335 return MathTrig\Angle::toRadians($number); 1336 } 1337 1338 /** 1339 * SIN. 1340 * 1341 * Returns the result of builtin function sin after validating args. 1342 * 1343 * @deprecated 1.18.0 1344 * Use the sin method in the MathTrig\Trig\Sine class instead 1345 * @see MathTrig\Trig\Sine::evaluate() 1346 * 1347 * @param array|mixed $number Should be numeric 1348 * 1349 * @return array|float|string sine 1350 */ 1351 public static function builtinSIN($number) 1352 { 1353 return MathTrig\Trig\Sine::sin($number); 1354 } 1355 1356 /** 1357 * SINH. 1358 * 1359 * Returns the result of builtin function sinh after validating args. 1360 * 1361 * @deprecated 1.18.0 1362 * Use the sinh method in the MathTrig\Trig\Sine class instead 1363 * @see MathTrig\Trig\Sine::sinh() 1364 * 1365 * @param array|mixed $number Should be numeric 1366 * 1367 * @return array|float|string Rounded number 1368 */ 1369 public static function builtinSINH($number) 1370 { 1371 return MathTrig\Trig\Sine::sinh($number); 1372 } 1373 1374 /** 1375 * SQRT. 1376 * 1377 * Returns the result of builtin function sqrt after validating args. 1378 * 1379 * @deprecated 1.18.0 1380 * Use the sqrt method in the MathTrig\Sqrt class instead 1381 * @see MathTrig\Sqrt::sqrt() 1382 * 1383 * @param array|mixed $number Should be numeric 1384 * 1385 * @return array|float|string Rounded number 1386 */ 1387 public static function builtinSQRT($number) 1388 { 1389 return MathTrig\Sqrt::sqrt($number); 1390 } 1391 1392 /** 1393 * TAN. 1394 * 1395 * Returns the result of builtin function tan after validating args. 1396 * 1397 * @deprecated 1.18.0 1398 * Use the tan method in the MathTrig\Trig\Tangent class instead 1399 * @see MathTrig\Trig\Tangent::tan() 1400 * 1401 * @param array|mixed $number Should be numeric 1402 * 1403 * @return array|float|string Rounded number 1404 */ 1405 public static function builtinTAN($number) 1406 { 1407 return MathTrig\Trig\Tangent::tan($number); 1408 } 1409 1410 /** 1411 * TANH. 1412 * 1413 * Returns the result of builtin function sinh after validating args. 1414 * 1415 * @deprecated 1.18.0 1416 * Use the tanh method in the MathTrig\Trig\Tangent class instead 1417 * @see MathTrig\Trig\Tangent::tanh() 1418 * 1419 * @param array|mixed $number Should be numeric 1420 * 1421 * @return array|float|string Rounded number 1422 */ 1423 public static function builtinTANH($number) 1424 { 1425 return MathTrig\Trig\Tangent::tanh($number); 1426 } 1427 1428 /** 1429 * Many functions accept null/false/true argument treated as 0/0/1. 1430 * 1431 * @deprecated 1.18.0 1432 * Use the validateNumericNullBool method in the MathTrig\Helpers class instead 1433 * @see MathTrig\Helpers::validateNumericNullBool() 1434 * 1435 * @param mixed $number 1436 */ 1437 public static function nullFalseTrueToNumber(&$number): void 1438 { 1439 $number = Functions::flattenSingleValue($number); 1440 if ($number === null) { 1441 $number = 0; 1442 } elseif (is_bool($number)) { 1443 $number = (int) $number; 1444 } 1445 } 1446 }
title
Description
Body
title
Description
Body
title
Description
Body
title
Body