Abhimanyu Sharma 8 роки тому
батько
коміт
8092336231

+ 2 - 2
composer.json

@@ -1,10 +1,10 @@
 {
-    "name": "abhimanyusharma003/conversion",
+    "name": "abhimanyu003/conversion",
     "description": "Laravel Unit Conversion",
      "keywords": [
          "laravel", "unit", "measurements", "conversion"
      ],
-    "homepage":    "https://github.com/abhimanyusharma003/conversion",
+    "homepage":    "https://github.com/abhimanyu003/conversion",
     "license": "MIT",
     "authors": [
         {

+ 252 - 0
src/Abhimanyu003/Conversion/Conversion.php

@@ -0,0 +1,252 @@
+<?php namespace Abhimanyu003\Conversion;
+
+class Conversion
+{
+
+    /**
+     * @var array
+     */
+    protected static $conversionChart = [
+        // Acceleration
+        'METRE_PER_SECOND_SQUARED' => 1,
+
+        // Angle
+        'TURN'    => 6.28318531,
+        'RADIAN'  => 1,
+        'DEGREE'  => 0.0174532925,
+        'GRADIAN' => 0.015707963267949,
+
+        // Area
+        'SQUARE_METRE'     => 1,
+        'HECTARE'          => 100,
+        'SQUARE_KILOMETRE' => 1000000,
+        'SQUARE_INCH'      => 0.00064516,
+        'SQUARE_FEET'      => 0.09290304,
+        'SQUARE_YARD'      => 0.83612736,
+        'ACRE'             => 247.105,
+        'SQUARE_MILE'      => 2589988.110336,
+
+        // Storage
+        'BIT'      => 0.00012207,
+        'BYTE'     => 0.000976563,
+        'KILOBIT'  => 0.125,
+        'KILOBYTE' => 1,
+        'MEGABIT'  => 128,
+        'MEGABYTE' => 1024,
+        'GIGABIT'  => 131072,
+        'GIGABYTE' => 1.049e+6,
+        'TERABIT'  => 1.342e+8,
+        'TERABYTE' => 1.074e+9,
+        'PETABIT'  => 1.374e+11,
+        'PETABYTE' => 1.1e+12,
+
+        // Current
+        'STATAMPERE'  => 3.33564e-10,
+        'MICROAMPERE' => 1e-06,
+        'MILLIAMPERE' => 0.001,
+        'AMPERE'      => 1,
+        'ABAMPERE'    => 10,
+        'KILOAMPERE'  => 1000,
+
+        // Fuel
+        'KILOMETRES_PER_LITRE'     => 1,
+        'LITRE_PER_100_KILOMETRES' => 100,
+        'MILES_PER_GALLON'         => 0.354006,
+        'US_MILES_PER_GALLON'      => 0.425144,
+
+        // Length
+        'MILLIMETRE'    => 0.001,
+        'CENTIMETRE'    => 0.01,
+        'METRE'         => 1,
+        'KILOMETRE'     => 1000,
+        'INCH'          => 0.0254,
+        'FOOT'          => 0.3048,
+        'YARD'          => 0.9144,
+        'MILE'          => 1609.34,
+        'NAUTICAL_MILE' => 1852,
+
+        // Mass
+        'MICROGRAM'  => 1e-7,
+        'MILLIGRAM'  => 1e-6,
+        'GRAM'       => 0.001,
+        'KILOGRAM'   => 1,
+        'METRIC_TON' => 100,
+        'OUNCE'      => 0.0283495,
+        'POUND'      => 0.453592,
+        'STONE'      => 6.35029,
+        'SHORT_TON'  => 907.185,
+        'LONG_TON'   => 1016.0469088,
+
+        // Pressure
+        'PASCAL'                 => 1,
+        'KILOPASCAL'             => 1000,
+        'MEGAPASCAL'             => 1e6,
+        'BAR'                    => 1e5,
+        'MILLIMETRES_OF_MERCURY' => 133.3224,
+        'INCHES_OF_MERCURY'      => 3.386389e3,
+        'POUNDS_PER_SQUARE_INCH' => 6.894757e3,
+        'ATMOSPHERE'             => 101325,
+
+        // Speed
+        'METRE_PER_SECOND'    => 1,
+        'KILOMETRES_PER_HOUR' => 0.277778,
+        'FEET_PER_SECOND'     => 0.3048,
+        'MILES_PER_HOUR'      => 0.44704,
+        'KNOT'                => 0.514444,
+
+        // Temperature
+        'CELSIUS'    => 273.15,
+        'FAHRENHEIT' => 255.372,
+        'KELVIN'     => 1,
+
+        // Time
+        'NANOSECOND'  => 1e-9,
+        'MICROSECOND' => 1e-6,
+        'MILLISECOND' => 0.001,
+        'SECOND'      => 1,
+        'MINUTE'      => 60,
+        'HOUR'        => 3600,
+        'DAY'         => 86400,
+        'WEEK'        => 604800,
+        'MONTH'       => 2.62974e6,
+        'YEAR'        => 3.15569e7,
+        'DECADE'      => 3.15569e8,
+        'CENTURY'     => 3.15569e9,
+        'MILLENIUM'   => 3.1556926e10,
+
+        // Voltage
+        'VOLT'     => 1,
+        'KILOVOLT' => 1000,
+
+        // Volume
+        'MILLILITRE'    => 1e-6,
+        'LITRE'         => 0.001,
+        'CUBIC_METRE'   => 1,
+        'GALLON'        => 0.00454609,
+        'QUART'         => 0.00113652,
+        'PINT'          => 0.000568261,
+        'TABLESPOON'    => 1.7758e-5,
+        'TEASPOON'      => 5.9194e-6,
+        'US_GALLON'     => 0.00378541,
+        'US_QUART'      => 0.000946353,
+        'US_PINT'       => 0.000473176,
+        'US_CUP'        => 0.000236588,
+        'US_OUNCE'      => 2.9574e-5,
+        'US_TABLESPOON' => 1.4787e-5,
+        'US_TEASPOON'   => 4.9289e-6,
+        'CUBIC_INCH'    => 1.6387e-5,
+        'CUBIC_FOOT'    => 0.0283168,
+    ];
+
+    /**
+     * @var string
+     */
+    protected $value;
+
+
+    /**
+     * @var string
+     */
+    protected $unit;
+
+
+    /**
+     * @var
+     */
+    protected static $native;
+
+    /**
+     * @var null
+     */
+    protected $number = null;
+    /**
+     * @var
+     */
+    protected $type;
+
+    /**
+     * @param string $quantity
+     * @param string $unit
+     */
+    public function __construct($quantity = '', $unit = '')
+    {
+        $this->unit = $unit;
+        $this->value = $quantity;
+    }
+
+    /**
+     * @param $quanity
+     * @param $unit
+     * @return Conversion
+     */
+    public function convert($quanity, $unit)
+    {
+        return new Conversion($quanity, $unit);
+    }
+
+
+    /**
+     * @param $unit
+     * @return $this
+     */
+    public function to($unit)
+    {
+        $this->value = $this->process($this->unit, $unit, $this->value);
+        $this->unit = $unit;
+
+        return $this;
+    }
+
+
+    /**
+     * @param $from
+     * @param $to
+     * @param $value
+     * @return float
+     * @throws \Exception
+     */
+    protected function process($from, $to, $value)
+    {
+        return ($value * $this->getConversion($from)) / $this->getConversion($to);
+    }
+
+
+    /**
+     * @param $unit
+     * @return mixed
+     * @throws \Exception
+     */
+    protected function getConversion($unit)
+    {
+        if (!isset(static::$conversionChart[strtoupper($unit)])) {
+            throw new \Exception(sprintf(
+                'No conversion between "%s" and "%s" is defined.',
+                static::$native,
+                $unit
+            ));
+        }
+
+        return static::$conversionChart[strtoupper($unit)];
+    }
+
+
+    /**
+     * @param int $decimals
+     * @param string $decPoint
+     * @param string $thousandSep
+     * @return string
+     */
+    public function format($decimals = 2, $decPoint = '.', $thousandSep = ',')
+    {
+        return number_format($this->value, $decimals, $decPoint, $thousandSep);
+    }
+
+
+    /**
+     * @return string
+     */
+    public function __toString()
+    {
+        return $this->format();
+    }
+}

+ 4 - 4
src/Abhimanyusharma003/Conversion/ConversionFacade.php → src/Abhimanyu003/Conversion/ConversionFacade.php

@@ -1,8 +1,9 @@
-<?php namespace Abhimanyusharma003\Conversion;
+<?php namespace Abhimanyu003\Conversion;
 
 use Illuminate\Support\Facades\Facade;
 
-class ConversionFacade extends Facade {
+class ConversionFacade extends Facade
+{
 
     /**
      * Get the registered name of the component.
@@ -13,5 +14,4 @@ class ConversionFacade extends Facade {
     {
         return 'conversion';
     }
-
-}
+}

+ 8 - 10
src/Abhimanyusharma003/Conversion/ConversionServiceProvider.php → src/Abhimanyu003/Conversion/ConversionServiceProvider.php

@@ -1,9 +1,10 @@
-<?php namespace Abhimanyusharma003\Conversion;
+<?php namespace Abhimanyu003\Conversion;
 
 use Illuminate\Foundation\AliasLoader;
 use Illuminate\Support\ServiceProvider;
 
-class ConversionServiceProvider extends ServiceProvider {
+class ConversionServiceProvider extends ServiceProvider
+{
 
     /**
      * Indicates if loading of the provider is deferred.
@@ -19,19 +20,17 @@ class ConversionServiceProvider extends ServiceProvider {
      */
     public function register()
     {
-        $this->app['conversion'] = $this->app->share(function ($app)
-        {
+        $this->app['conversion'] = $this->app->share(function ($app) {
             return new Conversion;
         });
     }
 
     public function boot()
     {
-        $this->package('abhimanyusharma003/conversion');
-        $this->app->booting(function ()
-        {
+        $this->package('abhimanyu003/conversion');
+        $this->app->booting(function () {
             $loader = AliasLoader::getInstance();
-            $loader->alias('Conversion', 'Abhimanyusharma003\Conversion\ConversionFacade');
+            $loader->alias('Conversion', 'Abhimanyu003\Conversion\ConversionFacade');
         });
     }
 
@@ -42,7 +41,6 @@ class ConversionServiceProvider extends ServiceProvider {
      */
     public function provides()
     {
-        return array('conversion');
+        return ['conversion'];
     }
-
 }

+ 0 - 252
src/Abhimanyusharma003/Conversion/Conversion.php

@@ -1,252 +0,0 @@
-<?php namespace Abhimanyusharma003\Conversion;
-
-class Conversion {
-
-    /**
-     * @var array
-     */
-    protected static $conversionChart = array(
-        // Acceleration
-        'METRE_PER_SECOND_SQUARED' => 1,
-
-        // Angle
-        'TURN'                     => 6.28318531,
-        'RADIAN'                   => 1,
-        'DEGREE'                   => 0.0174532925,
-        'GRADIAN'                  => 0.015707963267949,
-
-        // Area
-        'SQUARE_METRE'             => 1,
-        'HECTARE'                  => 100,
-        'SQUARE_KILOMETRE'         => 1000000,
-        'SQUARE_INCH'              => 0.00064516,
-        'SQUARE_FEET'              => 0.09290304,
-        'SQUARE_YARD'              => 0.83612736,
-        'ACRE'                     => 247.105,
-        'SQUARE_MILE'              => 2589988.110336,
-
-        // Storage
-        'BIT'                      => 0.00012207,
-        'BYTE'                     => 0.000976563,
-        'KILOBIT'                  => 0.125,
-        'KILOBYTE'                 => 1,
-        'MEGABIT'                  => 128,
-        'MEGABYTE'                 => 1024,
-        'GIGABIT'                  => 131072,
-        'GIGABYTE'                 => 1.049e+6,
-        'TERABIT'                  => 1.342e+8,
-        'TERABYTE'                 => 1.074e+9,
-        'PETABIT'                  => 1.374e+11,
-        'PETABYTE'                 => 1.1e+12,
-
-        // Current
-        'STATAMPERE'               => 3.33564e-10,
-        'MICROAMPERE'              => 1e-06,
-        'MILLIAMPERE'              => 0.001,
-        'AMPERE'                   => 1,
-        'ABAMPERE'                 => 10,
-        'KILOAMPERE'               => 1000,
-
-        // Fuel
-        'KILOMETRES_PER_LITRE'     => 1,
-        'LITRE_PER_100_KILOMETRES' => 100,
-        'MILES_PER_GALLON'         => 0.354006,
-        'US_MILES_PER_GALLON'      => 0.425144,
-
-        // Length
-        'MILLIMETRE'               => 0.001,
-        'CENTIMETRE'               => 0.01,
-        'METRE'                    => 1,
-        'KILOMETRE'                => 1000,
-        'INCH'                     => 0.0254,
-        'FOOT'                     => 0.3048,
-        'YARD'                     => 0.9144,
-        'MILE'                     => 1609.34,
-        'NAUTICAL_MILE'            => 1852,
-
-        // Mass
-        'MICROGRAM'                => 1e-7,
-        'MILLIGRAM'                => 1e-6,
-        'GRAM'                     => 0.001,
-        'KILOGRAM'                 => 1,
-        'METRIC_TON'               => 100,
-        'OUNCE'                    => 0.0283495,
-        'POUND'                    => 0.453592,
-        'STONE'                    => 6.35029,
-        'SHORT_TON'                => 907.185,
-        'LONG_TON'                 => 1016.0469088,
-
-        // Pressure
-        'PASCAL'                   => 1,
-        'KILOPASCAL'               => 1000,
-        'MEGAPASCAL'               => 1e6,
-        'BAR'                      => 1e5,
-        'MILLIMETRES_OF_MERCURY'   => 133.3224,
-        'INCHES_OF_MERCURY'        => 3.386389e3,
-        'POUNDS_PER_SQUARE_INCH'   => 6.894757e3,
-        'ATMOSPHERE'               => 101325,
-
-        // Speed
-        'METRE_PER_SECOND'         => 1,
-        'KILOMETRES_PER_HOUR'      => 0.277778,
-        'FEET_PER_SECOND'          => 0.3048,
-        'MILES_PER_HOUR'           => 0.44704,
-        'KNOT'                     => 0.514444,
-
-        // Temperature
-        'CELSIUS'                  => 273.15,
-        'FAHRENHEIT'               => 255.372,
-        'KELVIN'                   => 1,
-
-        // Time
-        'NANOSECOND'               => 1e-9,
-        'MICROSECOND'              => 1e-6,
-        'MILLISECOND'              => 0.001,
-        'SECOND'                   => 1,
-        'MINUTE'                   => 60,
-        'HOUR'                     => 3600,
-        'DAY'                      => 86400,
-        'WEEK'                     => 604800,
-        'MONTH'                    => 2.62974e6,
-        'YEAR'                     => 3.15569e7,
-        'DECADE'                   => 3.15569e8,
-        'CENTURY'                  => 3.15569e9,
-        'MILLENIUM'                => 3.1556926e10,
-
-        // Voltage
-        'VOLT'                     => 1,
-        'KILOVOLT'                 => 1000,
-
-        // Volume
-        'MILLILITRE'               => 1e-6,
-        'LITRE'                    => 0.001,
-        'CUBIC_METRE'              => 1,
-        'GALLON'                   => 0.00454609,
-        'QUART'                    => 0.00113652,
-        'PINT'                     => 0.000568261,
-        'TABLESPOON'               => 1.7758e-5,
-        'TEASPOON'                 => 5.9194e-6,
-        'US_GALLON'                => 0.00378541,
-        'US_QUART'                 => 0.000946353,
-        'US_PINT'                  => 0.000473176,
-        'US_CUP'                   => 0.000236588,
-        'US_OUNCE'                 => 2.9574e-5,
-        'US_TABLESPOON'            => 1.4787e-5,
-        'US_TEASPOON'              => 4.9289e-6,
-        'CUBIC_INCH'               => 1.6387e-5,
-        'CUBIC_FOOT'               => 0.0283168,
-    );
-
-    /**
-     * @var string
-     */
-    protected $value;
-
-
-    /**
-     * @var string
-     */
-    protected $unit;
-
-
-    /**
-     * @var
-     */
-    protected static $native;
-
-    /**
-     * @var null
-     */
-    protected $number = null;
-    /**
-     * @var
-     */
-    protected $type;
-
-    /**
-     * @param string $quantity
-     * @param string $unit
-     */
-    public function __construct($quantity = '', $unit = '')
-    {
-        $this->unit = $unit;
-        $this->value = $quantity;
-    }
-
-    /**
-     * @param $quanity
-     * @param $unit
-     * @return Conversion
-     */
-    public function convert($quanity, $unit)
-    {
-        return new Conversion($quanity, $unit);
-    }
-
-
-    /**
-     * @param $unit
-     * @return $this
-     */
-    public function to($unit)
-    {
-        $this->value = $this->process($this->unit, $unit, $this->value);
-        $this->unit = $unit;
-
-        return $this;
-    }
-
-
-    /**
-     * @param $from
-     * @param $to
-     * @param $value
-     * @return float
-     * @throws \Exception
-     */
-    protected function process($from, $to, $value)
-    {
-        return ($value * $this->getConversion($from)) / $this->getConversion($to);
-    }
-
-
-    /**
-     * @param $unit
-     * @return mixed
-     * @throws \Exception
-     */
-    protected function getConversion($unit)
-    {
-        if ( ! isset(static::$conversionChart[strtoupper($unit)]))
-        {
-            throw new \Exception(sprintf(
-                'No conversion between "%s" and "%s" is defined.',
-                static::$native,
-                $unit
-            ));
-        }
-
-        return static::$conversionChart[strtoupper($unit)];
-    }
-
-
-    /**
-     * @param int    $decimals
-     * @param string $decPoint
-     * @param string $thousandSep
-     * @return string
-     */
-    public function format($decimals = 2, $decPoint = '.', $thousandSep = ',')
-    {
-        return number_format($this->value, $decimals, $decPoint, $thousandSep);
-    }
-
-
-    /**
-     * @return string
-     */
-    public function __toString()
-    {
-        return $this->format();
-    }
-}