这是我的问题。
我有一个函数,PHP类端,从一个表读取所有数据,创建具有特定CSS ID的所有div,将数据放到适当的位置,其中一个数据来自外部源,外部php文件。
所以我在代码中执行此操作:
$Return .= "</div><div id='PostTitleComplete'><strong>Post Completo</strong></div><div id='PostText'>";
$Return .= include($row['PathFile']);
$Return .= "</div><div id='PostData'>";
所有div都正常打开和关闭,所有数据都正常工作,直到我将曾经从表中加载的数据更改为div,这里包含的文件已知。
外部文件只有来自Visual Studio的HTML副本生成的HTML代码,而且它很好用,我以前在其他地方使用那个html代码,直到知道才有问题。
因此,CSS就是以下内容:
这是用于保存包含文件的CSS:
#PostText {
text-align:center;
padding: 15px;
word-wrap: break-word;
}
这是上述的父母:
#PostBody {
border: #00C 1px solid;
width:80%;
background:#FFFFFF;
float:left;
}
这些是包含文件中的CSS: 一个div包括一个div,就像名字所说的那样。
#FirstOne {
border: #000080 1px solid;
color: #000;
font-family: 'Courier New', Courier, Monospace;
font-size: 9pt;
}
#SecondOne {
background: #000080;
color: #fff;
font-family: Verdana, Tahoma, Arial, sans-serif;
font-weight: bold;
padding: 2px 5px;
}
我在一个博客中使用了相同的结构,但是我使用表中的数据而不是包含文件,所以我认为问题来自CSS。这是我得到的结果。这个Giang Div完全可以根据屏幕尺寸进行调整,但是它保持在那里而不是箭头点,这里打印出包含。
答案 0 :(得分:1)
而不是使用incude尝试使用file_get_content()
$Return .= "</div><div id='PostTitleComplete'><strong>Post Completo</strong></div>";
$Return .= "<div id='PostText'>";
$Return .= file_get_content($row['PathFile']);
$Return .= "</div><div id='PostData'>";
答案 1 :(得分:1)
嗯...
返回值1
,因为include
- 语句已成功执行。
如果包含的文件不包含任何需要运行的代码,则可以使用file_get_contents()
:
$Return .= "</div><div id='PostTitleComplete'><strong>Post Completo</strong></div><div id='PostText'>";
$Return .= file_get_contents($row['PathFile']);
$Return .= "</div><div id='PostData'>";
作为参考,如果包含文件确实有必须执行的代码,请使用输出缓冲:
function get_include_contents($filename) {
if (is_file($filename)) {
ob_start();
include $filename;
return ob_get_clean();
}
return false;
}
$Return .= "</div><div id='PostTitleComplete'><strong>Post Completo</strong></div><div id='PostText'>";
$Return .= get_include_contents($row['PathFile']);
$Return .= "</div><div id='PostData'>";