是否可以在 PHP 尝试评估其真值之前扩展/替换变量?
我正在尝试编写一个 Wordpress 模板,该模板将根据我们所在的页面执行不同的查询。如果我们在主页上,查询应该如下所示:
while ( $postlist->have_posts() ) : $postlist->the_post();
// code...
如果我们不在主页上,查询应该如下所示:
while ( have_posts() ): the_post();
// code...
所以我想我会试试这个:
$query_prefix = ( is_front_page() ) ? '$postlist->' : '';
$query_condition = $query_prefix.'have_posts()';
$query_do = $query_prefix.'the_post()';
while ( $query_condition ): $query_do;
// code...
问题是,这正在创建一个无限循环,因为$query_condition
它是一个字符串并且计算结果为 TRUE。似乎 PHP 从不“读取”变量的内容。我需要我的变量从字面上扩展自己,然后才提供自己进行评估。谁能告诉我如何做到这一点?