包括不按预期工作

时间:2014-05-30 23:46:01

标签: php

这让我感到非常困惑,所以我在我的php中有一个简单的包含行,但由于某些原因它并不总是正常工作。

基本上,include正在加载我的主要内容部分...

如果$page['view']list,我的网页将无法正确加载...

我拥有的PHP是

include ('lib/views/' . $page['view'] . '.php');

然而,页面没有加载,并且此点以下没有任何内容加载,包括页脚...

这可以按预期工作

echo 'lib/views/' . $page['view'] . '.php';

我的apache2错误日志吐出以下错误

include(): Failed opening 'lib/views/.php' for inclusion (include_path='.:/usr/share/php:/usr/share/pear') in /home/site/www/lib/includes/main.php on line 3

当我尝试这个时,页脚重新出现但仍然是同样的错误

$view = 'lib/views/' . $page['view'] . '.php';
include ($view);

这对我来说非常困惑,特别是考虑到$page['view'] avatarif (isset($page['view'])) { var_dump($page['view']); } ,那么

编辑1

根据@philwc的建议,我已将此添加到我的代码中

list

按预期输出哪些{{1}}

2 个答案:

答案 0 :(得分:2)

试试这个:

include ("lib/views/{$page['view']}.php");

正如你所说,它会给你一个不同的错误,只需将其标记为正确,这样它就不会陷入困境:)

答案 1 :(得分:1)

看起来$ page ['view']设置不正确。尝试使用像

这样的isset包装它
if(isset($page['view'])){
    include ('lib/views/' . $page['view'] . '.php');
}else{
    echo 'Error!';
}
相关问题