code: public static function FV($rate = 0, $nper = 0, $pmt = 0, $pv = 0, $type = 0)
      {
          $rate = Functions::flattenSingleValue($rate);
          $nper = Functions::flattenSingleValue($nper);
          $pmt = Functions::flattenSingleValue($pmt);
          $pv = Functions::flattenSingleValue($pv);
          $type = Functions::flattenSingleValue($type);
  
          // Validate parameters
          if ($type != 0 && $type != 1) {
              return Functions::NAN();
          }
  
          // Calculate
          if ($rate !== null && $rate != 0) {
              return -$pv * pow(1 + $rate, $nper) - $pmt * (1 + $rate * $type) * (pow(1 + $rate, $nper) - 1) / $rate;
          }
  
          return -$pv - $pmt * $nper;
      }
docs: FV.
  
  Returns the Future Value of a cash flow with constant payments and interest rate (annuities).
  
  Excel Function:
  FV(rate,nper,pmt[,pv[,type]])
  
  @category Financial Functions
  
  @param float $rate The interest rate per period
  @param int $nper Total number of payment periods in an annuity
  @param float $pmt The payment made each period: it cannot change over the
  life of the annuity. Typically, pmt contains principal
  and interest but no other fees or taxes.
  @param float $pv present Value, or the lump-sum amount that a series of
  future payments is worth right now
  @param int $type A number 0 or 1 and indicates when payments are due:
  0 or omitted    At the end of the period.
  1                At the beginning of the period.
  
  @return float