Hello, From time to time I need to write a few lines of code that usually look ridiculous:
$var = $input === ‘yes’ ? ‘yes’ : ’no’ $var = $input !== ‘yes’ ? ’no’ : $yes $var = $input > 10 ? 10 : $input $var = max(-10, min($input, 10) and many other variations. In Kotlin, I can use `coerceIn()` extension function with strings / numbers / comparables, which allows me to write such lines more readable. I suggest to add such function to PHP. The examples above may look like the following $var = coerce($input, variants: [“yes”, “no”], default: “yes”); $var = coerce($input, min: 0, max: 10, default: 5); $var = coerce($input, min: 0, max: 10, default: 5); For sure, that could be different functions not to introduce another overloading function. Or range arguments could be replaced with `range(0, 10)` function. This letter is an intent to start discussion of any possible ways of developing this idea. If we agree that the function has enough value to be bundled I’ll create RFC to push the idea further. So what do you think? ---------- Best regards, Dmitrii Derepko. @xepozz
