我正在尝试对我的数据库中的某些变量进行一般化。假设我们有下一个变量和值:
$var1 = "abc";
$var2 = "n/a";
$var3 = "das";
$var4 = "n/a";
我的 if 语句必须包含所有这些变量,检查哪些变量包含“n/a”,对于每个包含“n/a”的变量,脚本必须创建另一个变量$var21 = "Not Available"
。那可能吗?
我正在尝试对我的数据库中的某些变量进行一般化。假设我们有下一个变量和值:
$var1 = "abc";
$var2 = "n/a";
$var3 = "das";
$var4 = "n/a";
我的 if 语句必须包含所有这些变量,检查哪些变量包含“n/a”,对于每个包含“n/a”的变量,脚本必须创建另一个变量$var21 = "Not Available"
。那可能吗?
我不会使用variable variables
,只是由于个人喜好。如果你是自虐狂,你当然可以试试。
我会创建一个额外的哈希值。这也将消除对 if 语句的需要。:)
$descriptions = array(
"n/a" => "Not Available",
"brb" => "Be Right Back",
"iee" => "I'm easily extendable"
);
然后,当您需要特定键的文本时,您只需键入
$descriptive_text = $descriptions[$var1];
更新:
如果 中没有值,要将其设置为原始值$descriptions
,请执行以下操作:
$descriptive_text = (is_null($descriptions[$var1])) ? $var1 : $descriptions[$var1];
您应该为此使用数组。
$array = array("abc", "n/a", "das", "n/a");
foreach($array as $key => $value)
{
if($value == "n/a")
{
echo "Do Something!";
}
}
另请参阅:数组。