我想知道它是否是"最佳实践"甚至建议我的情况使用包含变量表达式的字符串,例如:
$block = <<<HTML
<div class="image">
<img src="{$image_url}" />
</div>
HTML;
使用这些字符串的问题是我必须在函数中使用它们,以便在定义变量之前不调用它们。例如:
function image() {
if( have_rows('image') ) {
while ( have_rows('image') ) {
the_row();
$image = get_sub_field('image');
$image_url = $image['url'];
}
return <<<HTML
<div class="image">
<img src="{$image_url}" />
</div>
HTML;
}
}
我没有能够从函数外部传入字符串,以便我可以抽象功能(if / while语句,get_sub_field),我必须在函数内部定义字符串,这样我才不会得到一个&#34;找不到变量$ image_url&#34;错误。
有更好的方法吗?也许是面向对象的方式,还是函数式编程最好?