Ejemplo n.º 1
0
    /**
     * Convert number between formats
     *
     * @param $number
     * @param string $inputFormat
     * @param string $outputFormat
     * @return string
     */
    protected function convert($number, $inputFormat = self::FORMAT_NUMBER,
                                        $outputFormat = self::FORMAT_BINARY)
    {
        if ($inputFormat == $outputFormat) {
            return $number;
        }

        // convert to number
        switch ($inputFormat) {
            case self::FORMAT_BINARY:
            case self::FORMAT_BTWOC:
                $number = $this->math->fromBinary($number);
                break;
            case self::FORMAT_NUMBER:
            default:
                // do nothing
                break;
        }

        // convert to output format
        switch ($outputFormat) {
            case self::FORMAT_BINARY:
                return $this->math->toBinary($number);
                break;
            case self::FORMAT_BTWOC:
                return $this->math->btwoc($this->math->toBinary($number));
                break;
            case self::FORMAT_NUMBER:
            default:
                return $number;
                break;
        }
    }