echo ("<div style=\"text-align:center\">" . include ('file.php') . "</div>\n");

我不知道为什么,但每当我把线在我的剧本,我得到黑屏:(

有帮助吗?

解决方案

echo "<div style=\"text-align:center\">";
include ('file.php');
echo "</div>\n";

包含这样是没有任何意义在这里串连不返回该文件的解析结果。

其他提示

当运行此片的代码:

echo ("<div style=\"text-align:center\">" . include ('temp-2.php') . "</div>\n");

(这是我从你的例子复制粘贴,只更改文件的名称)

我得到这样的警告:

Warning: include(temp-2.php</div> ) [function.include]: failed to open stream: No such file or directory

不知道该()指令的include正在做你所期望的......

,点击 实际上,示例#4 包括手册页看起来像它可能解释这一点:

<?php
// won't work, evaluated as include(('vars.php') == 'OK'), i.e. include('')
if (include('vars.php') == 'OK') {
    echo 'OK';
}

// works
if ((include 'vars.php') == 'OK') {
    echo 'OK';
}
?>

,点击 而且,事实上,重写你的代码如下:

echo ("<div style=\"text-align:center\">" . (include 'temp-2.php') . "</div>\n");

的效果要好得多:没有警告 - 该文件实际上是正确包含

,点击 一点题外话:如果你得到一个白色的屏幕,可能是因为您的配置“隐藏”的错误和警告 - 这是不是相当不错的发展环境在:具有那些会显示你HALP颇有几分

要改变,则可以使用 error_reporting display_errors 在你的php.ini选项文件。

或者,如果你没有获得一个,你可以使用的 error_reporting ini_set - 这样的事情在你的脚本的开头可以做:

error_reporting(E_ALL);
ini_set('display_errors', 'On');

注:当然,你不希望你的生产环境中,你应该记录错误(见的 log_errors ),并且不显示它们。

我不知道如果你能做到这样的事情。 执行包括第一和然后执行给定变量的从包含文件的回波。

我认为你需要做的是这样的:

ob_start();
include('file.php');
$contents = ob_get_clean();

echo ("<div style=\"text-align:center\">" . $contents . "</div>\n");

在“包括”指令不返回任何东西,所以试图把它添加到一个字符串行不通的。

include 是不是一个函数而是一种特殊语言构造。这也是为什么你不需要围绕“参数”括号作为include只有一个“参数”的原因。包裹在括号就像在括号中包裹的任何其它值:

1 === (1) === ((1)) === (((1))) === …

相反,您需要包装的整个构建体中括号:

echo "<div style=\"text-align:center\">" . (include 'file.php') . "</div>\n";

但由于include不返回包含脚本文件的输出,而是直接打印它,你将需要缓冲输出,并返回到包含该文件的脚本:

<?php // file.php
    ob_start();
    // …
    return ob_get_clean();

这会工作。但我不认为你想这样做。所以这可能是相当简单:

echo "<div style=\"text-align:center\">";
include 'file.php';
echo "</div>\n";

顺便说一句:echoprintexitdie是特殊的语言结构了。也参见 require_once()或死亡()不工作

要输出的file.php你可能会想使用 HTTP://us3.php。净/的file_get_contents

是否有file.php什么?它可以是空的,或东西在它可能会导致错误。

看源代码在浏览器中,而不仅仅是可见部分。通常你可以通过按Ctrl + U做到这一点。如果这只是输出一个空div元素,你会看到在浏览器中的空白屏幕。而且要记住,php文件在你的设置中最有可能被解析输出,这意味着你将不会看到<?php ?>标记和代码其间他们面前。

我从来没有想过有作为的函数返回一个字符串的,你可以打印。

参考手册表明,如果有的话,则返回一个布尔值。

是否有在file.php的末尾?

的额外换行符
许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top