限制函数参数以允许特定值

use*_*664 5 php function

我想限制某人可以在我的函数调用中分配给变量的值。例如说我的功能是

function myFunction ($carType, $isOld , $something)
{
    //do what is required
}
Run Code Online (Sandbox Code Playgroud)

我希望我应该能够限制 $carType, $isOld 仅具有某些值,例如来自给定数组的值:

$carTypeValues = array ("car1", "car2", "car3");
$isOldValues = array (true,false);
Run Code Online (Sandbox Code Playgroud)

我知道我可以将参数变量限制为某种类类型。

我试图找到一种方法来做到这一点,但我找不到任何能完全满足我想要的东西。我知道一旦实际执行函数调用我就可以检查该值,但是我正在寻找一些允许用户最好能够使用选择器的东西,例如:

myFunction (carType::car1, isOld::car2 , $something);
Run Code Online (Sandbox Code Playgroud)

我不确定,这可能是:

myFunction (carType.car1, isOld.car2 , $something);
Run Code Online (Sandbox Code Playgroud)

感谢您阅读本文

sec*_*tus 0

PHP 语言没有 Enum 类型(仅命题)。

但是您可以通过安装特殊扩展来获取splEnum 。

PHP和枚举问题