// Conversion functions (all convert *from meters* first)
function mmToMeters($mm) { return $mm / 1000.0; }
function cmToMeters($cm) { return $cm / 100.0; }
function kmToMeters($km) { return $km * 1000.0; }
function milesToMeters($mi) { return $mi * 1609.34; }
function feetToMeters($ft) { return $ft * 0.3048; }
function yardsToMeters($yd) { return $yd * 0.9144; }
function inchesToMeters($in) { return $in * 0.0254; }
// Convert meters → all units
function toMillimeters($m) { return $m * 1000.0; }
function toCentimeters($m) { return $m * 100.0; }
function toKilometers($m) { return $m / 1000.0; }
function toMiles($m) { return $m / 1609.34; }
function toFeet($m) { return $m / 0.3048; }
function toYards($m) { return $m / 0.9144; }
function toInches($m) { return $m / 0.0254; }
echo "Choose input unit:\n";
echo "1. Millimeters\n";
echo "2. Centimeters\n";
echo "3. Meters\n";
echo "4. Kilometers\n";
echo "5. Miles\n";
echo "6. Feet\n";
echo "7. Yards\n";
echo "8. Inches\n";
echo "Enter choice: ";
$choice = intval(readline());
echo "Enter value: ";
$value = floatval(readline());
// Convert chosen unit → meters
switch ($choice) {
case 1: $meters = mmToMeters($value); break;
case 2: $meters = cmToMeters($value); break;
case 3: $meters = $value; break;
case 4: $meters = kmToMeters($value); break;
case 5: $meters = milesToMeters($value); break;
case 6: $meters = feetToMeters($value); break;
case 7: $meters = yardsToMeters($value); break;
case 8: $meters = inchesToMeters($value); break;
default:
echo "Invalid choice\n";
exit;
}
echo "\nConverted from meters (" . number_format($meters, 6) . " m):\n";
echo "Millimeters: " . number_format(toMillimeters($meters), 6) . "\n";
echo "Centimeters: " . number_format(toCentimeters($meters), 6) . "\n";
echo "Meters: " . number_format($meters, 6) . "\n";
echo "Kilometers: " . number_format(toKilometers($meters), 6) . "\n";
echo "Miles: " . number_format(toMiles($meters), 6) . "\n";
echo "Feet (Foot): " . number_format(toFeet($meters), 6) . "\n";
echo "Yards: " . number_format(toYards($meters), 6) . "\n";
echo "Inches: " . number_format(toInches($meters), 6) . "\n";
/*
run:
Choose input unit:
1. Millimeters
2. Centimeters
3. Meters
4. Kilometers
5. Miles
6. Feet
7. Yards
8. Inches
Enter choice: 4
Enter value: 1
Converted from meters (1,000.000000 m):
Millimeters: 1,000,000.000000
Centimeters: 100,000.000000
Meters: 1,000.000000
Kilometers: 1.000000
Miles: 0.621373
Feet (Foot): 3,280.839895
Yards: 1,093.613298
Inches: 39,370.078740
*/