我有一系列常量我用来填充一系列参数。代码看起来像这样:
define( 'variable_one', $_POST["variable_one"];
define( 'variable_two', $_POST["variable_two"];
$current_api_params->sVariableOne = variable_one;
$current_api_params->sVariabletwo = variable_two;
如何通过if语句设置其中一个常量?变量来自一个表单,并且给定表单选项,variable_one,或者我使用过的几十个或任何一个,可能是许多不同的名称。
我只是做一些像
这样的事情if ( isset($_POST["variable_one"] ) {
define( 'variable_one', $_POST["variable_one"] );
}
elseif ( isset($_POST["variable_one_different_name"] ) {
define( 'variable_one', $_POST["variable_one_different_name"] );
}
else {
define( 'variable_one', '' );
}
$current_api_params->sVariableOne = variable_one;
如果它是如何完成的,那么它有简写吗?所有这些打字都变得乏味!
答案 0 :(得分:1)
您可以使用array_keys和for循环
沿着这些方向的某个地方(您可能需要检查一些语法错误,因为我在没有任何IDE /适当环境的情况下键入此内容)
$keys = array_keys($_POST)
foreach ($keys as $keyItem)
{
define($keyItem, $_POST[$keyItem]);
}
虽然我不确定为什么常数根本不恒定......但是嘿,由你来决定。