gpt4 book ai didi

php - 使用字符串调用 PHP 语言构造

转载 作者:行者123 更新时间:2023-12-02 06:23:12 24 4
gpt4 key购买 nike

我想缓冲一些内容。获取内容的方式取决于内容的获取方式,这就是为什么我向缓冲区函数添加了一个类型参数来定义是包含还是回显源。

PHP

<?php

function bufferContent($source, $type = 'include') {
ob_start();
$type($source);
return ob_get_clean();
}

echo bufferContent('<html>test</html>', 'echo');

?>

输出

Fatal error: Call to undefined function echo() in #### on line 5

这是为什么呢?难道不能通过字符串变量调用 echo() 或 include() 等标准 PHP 函数吗?

编辑:稍微更改了问题以使其更适合答案。

最佳答案

echo 不是一个函数:它是一种语言结构——因此,它不能这样调用。

您可以定义一个函数,该函数本身会调用 echo —— 并在调用 bufferContent 时使用您的函数:

function my_echo($str) {
echo $str;
}
echo bufferContent('<html>test</html>', 'my_echo');


一个引用,引用the manual page of echo :

Note: Because this is a language construct and not a function, it cannot be called using variable functions

关于php - 使用字符串调用 PHP 语言构造,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5597659/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com