Files
phpstorm/php-s1/workshop4/Models/Converter.php
2025-02-06 12:30:01 +00:00

67 lines
2.2 KiB
PHP
Executable File

<?php
class Converter {
/*
* Class for converting miles to kilometers, and vice versa
*/
var $number = 0, $fromUnit = '', $toUnit = '';
/*
* Constructor takes number and unit, then assigns
* them to corresponding properties
* @param int $number Number to be converted
* @param string $unit Conversion unit
*/
public function __construct($number = 0, $fromUnit = '', $toUnit = '') {
$this->number = $number;
$this->toUnit = $toUnit;
$this->fromUnit = $fromUnit;
}
/*
* Converts number and returns result
* @return string Result of conversion
*/
public function convert(): string {
$result = false;
if (is_numeric($this->number)) {
$result = $this->number;
switch ($this->fromUnit) {
case "KM":
switch ($this->toUnit) {
case "KM":
break;
case "Miles":
$result = $this->number * 0.621;
break;
case "Parsec":
$result = $this->number / 30856775812800;
break;
}
break;
case "Miles":
switch ($this->toUnit) {
case "KM":
$result = $this->number * 1.609;
break;
case "Miles":
break;
case "Parsec":
$result = $this->number / 19173511575400;
break;
}
break;
case "Parsec":
switch ($this->toUnit) {
case "KM":
$result = $this->number * 30856775812800;
break;
case "Miles":
$result = $this->number * 19173511575400;
break;
case "Parsec";
break;
}
break;
}
}
return $result;
}
}