我怀疑它会对性能产生“巨大”影响,但我想知道 PHP 循环是否比使用 PHP 变量吐出 HTML 更好?
一个非常简单的例子是这样的:
这是“更有效”:
<?php
$i = 0;
$settings = array(
1 => 'var_a|var_one',
2 => 'var_b|var_two',
3 => 'var_c|var_two',
4 => 'var_d|var_three',
);
foreach($settings as $setting) {
$e = explode('|', $setting);
if(get_option($e[0]) !== ''){ ?>
<li class="radio">
<h2><?php print($e[1]); ?></h2>
<input name="radio_ask" type="radio" value="<?php print($e[0]); ?>" id="radio_<?php print($i); ?>" tabindex="<?php print($i); ?>" onclick="this.setAttribute('checked', 'checked'); this.checked = true;">
</li>
<?php }
}
?>
或者
<?php
if(get_option('var_a') !== ''){ ?>
<li class="radio">
<h2><?php print( get_option('var_one')); ?></h2>
<input name="radio_ask" type="radio" value="<?php print( get_option('var_a')); ?>" id="radio_1" tabindex="1" onclick="this.setAttribute('checked', 'checked'); this.checked = true;">
</li>
}
if(get_option('var_b') !== ''){ ?>
<li class="radio">
<h2><?php print( get_option('var_two')); ?></h2>
<input name="radio_ask" type="radio" value="<?php print( get_option('var_b')); ?>" id="radio_2" tabindex="2" onclick="this.setAttribute('checked', 'checked'); this.checked = true;">
</li>
<?php } ?>
<?php
//etc. etc.
?>
这个问题的基础是我很久以前写了一些代码,从那时起我学到了很多东西。我想稍微清理一下。(诸如print($this); print($that);
代替之print($this.$that);
类的东西,包括上述内容。
我只是想确保移动到“最高”示例更好,或者只是一种更好/更清洁的做事方式。我不想继续做一些我认为看起来更干净的东西,但由于某种我看不到的原因很糟糕
编辑:对于代码的任何打嗝,我很抱歉,我当场写了它作为一个简单的例子