Why are knots used in aviation over kph?
Using knots made navigation calculations easier with paper maps marked in degrees and minutes. A nautical mile is the same as a minute of latitude, and a knot is one nautical mile per hour. Now with electronic navigation systems kph would be just as easy, but aviators are all used to thinking in knots so changing would be difficult.
It's just that post war, the US aviation industry was very dominant and the metric system never was popular there. For the same reason feet are used instead of meters for measuring altitude. And unlike with nautical miles, there's not much of an advantage for that. However, the units for altimeter settings are metric (i.e. millibar instead of inches of mercury) in much of the world except in the US.
For flight controllers and procedures they had to pick a unit for flight levels that everybody understands in the same way and since the US aviation industry after WW II pretty much dominated, a lot of planes would have used feet. Internationally, flight levels are used everywhere above certain altitudes. Those are basically feet divided by 1000 (kilo feet?, LOL). So, FL 29 would be 29000 feet at 29.92 inches of mercury in the US and 1013.2 millibars in the rest of the world.
The Russians actually used meters until very recently apparently and only switched to feet a few years ago after of course first supporting flight levels. And apparently, the Chinese still use meters: https://ivao.aero/flightops/divprocedures.php?id=CN and planes must actually be capable to switch their altimeters to using meters to fly in China. Likewise, North Korea uses meters apparently.