我不确定这是否是一种更简洁的编写方式,但我认为我在这里没有问题:
<?php switch ( $meta_box['type'] ) {
case 'textarea':
echo '<textarea name="<?php echo $meta_box[ 'name' ]; ?>">
<?php echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] ); ?>
</textarea>'
break;
这里更复杂,因为要回显的元素有单引号和双引号:
default:
echo "<input type="text" name="<?php echo $meta_box[ 'name' ]; ?>"
value="<?php echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] ); ?>"" /><?php
}
有什么建议重写这段代码吗?
这是完整的 switch 语句:
<?php switch ( $meta_box['type'] ) {
case 'textarea':
echo '<textarea name="<?php echo $meta_box[ 'name' ]; ?>">
<?php echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] ); ?>
</textarea>'
break;
default:
echo "<input type="text" name="<?php echo $meta_box[ 'name' ]; ?>"
value="<?php echo htmlspecialchars( $data[ $meta_box[ 'name' ] ] ); ?>"" /><?php
}
}
?>
如果你真的想outputPHP代码:
<?php switch ( $meta_box['type'] ) {
case 'textarea':
echo '<textarea name="<?=$meta_box[\'name\']?'.'>">
<?=htmlspecialchars( $data[ $meta_box[ \'name\' ] ] ) ?'.'>
</textarea>';
break;
default:
echo '<input type="text" name="<?=$meta_box[ \'name\' ] ?'.'>"
value="<?=htmlspecialchars( $data[ $meta_box[ \'name\' ] ] ) ?'.'>">';
?>
否则这对我来说更有意义:
<?php switch ( $meta_box['type'] ) {
case 'textarea':
echo '<textarea name="'.$meta_box['name'].'>">'.
htmlspecialchars( $data[ $meta_box['name'] ] ).
'</textarea>';
break;
default:
echo '<input type="text" name="'.$meta_box[ 'name' ].'" '.
'value="'.htmlspecialchars( $data[ $meta_box[ 'name' ] ] ).'">';
}
?>
但我猜想$data[$meta_box['name']]
数组索引也不正确。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)