code: public static function STDEVA(...$args)
      {
          $aArgs = Functions::flattenArrayIndexed($args);
  
          $returnValue = null;
  
          $aMean = self::AVERAGEA($aArgs);
          if ($aMean !== null) {
              $aCount = -1;
              foreach ($aArgs as $k => $arg) {
                  if ((is_bool($arg)) &&
                      (!Functions::isMatrixValue($k))) {
                  } else {
                      // Is it a numeric value?
                      if ((is_numeric($arg)) || (is_bool($arg)) || ((is_string($arg) & ($arg != '')))) {
                          if (is_bool($arg)) {
                              $arg = (int) $arg;
                          } elseif (is_string($arg)) {
                              $arg = 0;
                          }
                          if ($returnValue === null) {
                              $returnValue = pow(($arg - $aMean), 2);
                          } else {
                              $returnValue += pow(($arg - $aMean), 2);
                          }
                          ++$aCount;
                      }
                  }
              }
  
              if (($aCount > 0) && ($returnValue >= 0)) {
                  return sqrt($returnValue / $aCount);
              }
          }
  
          return Functions::DIV0();
      }
docs: STDEVA.
  
  Estimates standard deviation based on a sample, including numbers, text, and logical values
  
  Excel Function:
  STDEVA(value1[,value2[, ...]])
  
  @category Statistical Functions
  
  @param mixed ...$args Data values
  
  @return float