【发布时间】:2014-01-30 15:02:03
【问题描述】:
我正在编写 API 客户端,我想通过常量定义一个参数的默认值。现在我有这样的:
/**
* Available: val_1|val_3|val_3|val_4|val_5
*
* @var string
*/
const MY_DEFAULT_VALUE = 'val_1';
但我不确定“枚举”的这种用法是否正确。我找到了do it with method parameters 的方法,但这不是同一个问题。我的方法的定义是:
public function callApi($someParam, $anotherParam = self::MY_DEFAULT_VALUE)
这有什么标准吗?非常感谢。
编辑:我将停止使用抽象值和参数,我将尝试在我正在解决的具体示例中解释它...我正在使用方法 setLanguage() 调用 API,该方法具有可选的参数$lang。我的代码片段:
const DEFAULT_LANGUAGE = 'ENG';
// ...
public function setLanguage($lang = self::DEFAULT_LANGUAGE)
但是我调用的 API 只接受某些语言。基本上,我想在评论中告诉其他程序员的是:“好的,所以你想更改默认语言,但请注意只有这些值是有效的。”。这并不重要,我认为我当前的解决方案也很清楚:
/**
* Available: ENG|ITA|FRA|DEU|ESP
*
* @var string
*/
const DEFAULT_LANGUAGE = 'ENG';
我只是想知道,这方面是否有一些“好的做法”。
【问题讨论】:
-
我很困惑。如果常量被硬编码为 val_1,怎么可能在这里使用其他值(val_3 等)?
-
第一篇文章已编辑,希望现在更清楚我需要什么。
标签: php documentation phpdoc