如何检查变量label_$value
是否存在?
例如:
<?php foreach($status_values as $value => $label){ ?>
<input type="radio" name="status" value="<?php echo $value; ?>" <?php if($status == $value){ echo ' checked="checked"'; }?> />
<?php echo (isset("label_{$value}")) ? "label_{$value}" : $label; ?>
<?php } ?>
这会产生错误:分析错误:语法错误,isset 意外的"
但当我有时,我不会得到任何语法错误
<?php echo ("label_{$value}") ? "label_{$value}" : $label; ?>
所以我想:
- 检查变量是否存在:
$label_foo
- 使用默认
$label
您必须使用变量。使用
<?php
$label_test = "Hello";
$value = "test";
echo (isset(${"label_{$value}"})) ? "label_{$value}" : $label;
?>
这不是编译变量名的方式。尝试isset(${"label_$value"});