public static function write( $input, ?int $precision = null, $default = null ) {
    if( !self::is( $input ) ) return $default;
    else {

      $input = self::cast( $input );
      if( is_int( $precision ) ) return number_format( $input, $precision, '.', '' );
      else if( is_int( $input ) ) return (string) $input;
      else return str_replace( ',', '.', (string) $input );
    }
  }
public static function write( $input, ?int $precision = null, $default = null ) {
    if( !self::is( $input ) ) return $default;
    else {

      $input = self::cast( $input );
      if( is_int( $precision ) ) return number_format( $input, $precision, '.', '' );
      else if( is_int( $input ) ) return (string) $input;
      else return str_replace( ',', '.', (string) $input );
    }
  }
public static function write ( $ input , ? int $ precision = null , $ default = null ) { if ( ! self :: is ( $ input ) ) return $ default ; else { $ input = self :: cast ( $ input ) ; if ( is_int ( $ precision ) ) return number_format ( $ input , $ precision , '.' , '' ) ; else if ( is_int ( $ input ) ) return ( string ) $ input ; else return str_replace ( ',' , '.' , ( string ) $ input ) ; } }
Convert numbers to string

@param mixed    $input
@param int|null $precision Decimal count if not null
@param mixed    $default   Non-number inputs results

@return string|mixed
Convert numbers to string