首页 > 解决方案 > PHP 函数回显包含文件

问题描述

我目前正在开发一个 wordpress 插件。我创建了一个短代码,它显示另一个 html/php 文件的内容,如下所示:

function df_display_form()
{
    // Fetching some data with $wpdb

    // Display the data
    include_once plugin_dir_path(__FILE__) . 'markup/show-dynamic-form.php';
}

我的问题是短代码将显示在页面顶部。所以我用谷歌搜索了这个问题并找到了解决方案。正如那里所写的那样,问题是return应该使用它而不是echo.

所以我的问题是如何从包含的文件中返回渲染的内容?(不是回声)。

标签: phpwordpressphp-7.0

解决方案


尝试使用输出缓冲区。 https://www.php.net/manual/en/function.ob-get-clean.php

function df_display_form()
{
    ob_start(); 
    // Fetching some data with $wpdb

    // Display the data
    include_once plugin_dir_path(__FILE__) . 'markup/show-dynamic-form.php';
    $out = ob_get_clean();
    return $out;
}

推荐阅读