基本PHP:在命令中使用变量

时间:2012-05-23 19:45:27

标签: php

我是PHP新手,我在WordPress工作,但我认为这个问题不是WordPress特有的。基本上,我运行了一个返回一些数字的MySQL查询。在WordPress中,您可以使用一个名为wp_list_pages()的函数来确切地说出要包含在某些内容中的页面,如下所示:

 wp_list_pages('include=161,164,167,171,172,173,174,185,188,135,141,&title_li=');

三位数字都是帖子ID。我想要做的是以编程方式生成这些数字而不是硬编码。所以,我使用以下内容:

    $results = $wpdb->get_results("SELECT * FROM [table] WHERE [column] LIKE [string] ");
foreach($results as $returned_id) {$pagelist.=$returned_id->post_id.",";}

这很好用(括号中的所有内容都替换为实际信息)。它基本上只是在与我的SQL查询匹配的数字的$ pagelist变量中创建一个列表。如果我要运行“echo $ results”,输出将是“161,164,167 ...”等,这是硬编码版本中的确切列表。

我现在想用程序化版本替换硬编码版本 - 我认为它应该像

wp_list_pages('include=$pagelist');

但这不起作用。我想用该变量的内容替换该示例中的$ pagelist。我该怎么做?

4 个答案:

答案 0 :(得分:4)

选项1

如果要评估变量,则需要使用双引号。

wp_list_pages("include=$pagelist")

wp_list_pages("include={$pagelist}")

选项2

使用字符串连接

wp_list_pages('include=' . $pagelist);

选项3

使用sprintf

wp_list_pages(sprintf('include=%s',$pagelist));

答案 1 :(得分:0)

在PHP中,变量仅用双引号查找,而不是你所指出的。所以使用“而不是'

wp_list_pages("include=$pagelist");

您可以做的另一件事是将变量与字符串连接起来。像这样:

wp_list_pages('include='.$pagelist);

答案 2 :(得分:0)

你有没有尝试过:

wp_list_pages('include=' . $pagelist);

OR

wp_list_pages("include={$pagelist}");

答案 3 :(得分:0)

要引用字符串中的变量,您需要使用双引号。