PHP:如何将Include作为字符串而不使用输出缓冲?

3

假设有一个if语句:

if (stripos($names, "jack") !== false || stripos($names, "bob") !== false) {
 echo "Jack or Bob found.";
}

我希望在多个页面上使用此语句,而不必编辑每个页面中的if语句,如果我想更改if参数。 我已经尝试过这个:
$contents = file_get_contents('names.php');
if ($contents) {
 echo "Jack or Bob found.";
}

names.php
<?php
 $return_me = stripos($names, "jack") !== false || stripos($names, "bob") !== false;
 return $return_me;
?>

它不起作用。我正在尝试在不使用输出缓冲的情况下完成此操作,因为它会破坏我的整个脚本。有没有人知道解决方案?

1个回答

2
我建议你在一个可以包含的实用程序文件中编写此功能的函数。 utils.php.inc
function check_found_user($names) {
    return (stripos($names, "jack") !== false || stripos($names, "bob") !== false);
}

您的其他源代码文件

(注:该文本已经是中文,无需翻译)
require_once('utils.php.inc');

if ( check_found_user($names) ) {
    echo "Jack or Bob found.";
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接