3v4l.org

run code in 500+ PHP versions simultaneously
<?php echo CASE_LOWER, PHP_EOL; echo CASE_UPPER, PHP_EOL; $arr = ['a' => 1]; echo '===== THESE ARE VALID AND CORRECT =====', PHP_EOL; echo '------ $case is PHP constant -------------', PHP_EOL; var_dump(array_change_key_case($arr, CASE_LOWER)); var_dump(array_change_key_case($arr, CASE_UPPER)); echo '------ $case is integer -------------', PHP_EOL; var_dump(array_change_key_case($arr, 0)); var_dump(array_change_key_case($arr, 1)); echo '===== THE BEHAVIOUR HERE IS UNEXPECTED, I WOULD EXPECT A TYPEERROR =====', PHP_EOL; echo '------- $case is text string ------------', PHP_EOL; var_dump(array_change_key_case($arr, '0')); var_dump(array_change_key_case($arr, '1')); echo '------ $case is float -------------', PHP_EOL; var_dump(array_change_key_case($arr, 0.3)); var_dump(array_change_key_case($arr, 1.4)); echo '------ $case is boolean -------------', PHP_EOL; var_dump(array_change_key_case($arr, false)); var_dump(array_change_key_case($arr, true)); echo '===== WHEN ERRORS ARE ACTUALLY THROWN =====', PHP_EOL; echo '------ $case is invalid value -------------', PHP_EOL; try { var_dump(array_change_key_case($arr, 3)); } catch(Error $e) { echo $e->getMessage(), PHP_EOL; } echo '------ $case is invalid value and invalid type -------------', PHP_EOL; try { var_dump(array_change_key_case($arr, 'text')); } catch(Error $e) { echo $e->getMessage(), PHP_EOL; }

preferences:
60.56 ms | 878 KiB | 5 Q