日期:2014-05-17  浏览次数:20444 次

include一个php文件,经常会失败,请问需要注意些什么?
网上说是跟php的起始终结符有关<? ?>。
那就说说几种情况吧,
被include的php中,
1.<? ?>前有html
2.<? ?>前只有script
3.<? ?>后有html

主文件中,
1.include前后都是php
2.include前面是php
3.include后面是php
4.include前后都是html
5.include前面是html
6.include后面是html

------解决方案--------------------
本帖最后由 xuzuning 于 2013-06-14 09:21:23 编辑
include一个php文件,经常会失败
原因是路径不对,与主文件和子文件的书写无关(当然两个文件本身是要正确的)

比如
b.php
<?php
echo 'abcd';


a.php
<p>
<?php
echo 123;
include 'b.php';
?>
</p>

执行 a.php 时,只即执行的代码是:
<p>
<?php
echo 123;
?>
<?php
echo 'abcd';
?>
</p>
------解决方案--------------------
如果出错,就会有错误信息!
既无代码,也无错误信息,是不可能发现错误的

我的示例没有问题,目的是让你理解 include 到底是怎么回事
------解决方案--------------------
引用:
请看我的问题,根据几种情况给意见

你那几种情况都不是情况。。。
------解决方案--------------------
因为include一个文件失败与否,和include所在地方的源码无关,和被include的文件有关。

引用
当一个文件被包含时,语法解析器在目标文件的开头脱离 PHP 模式并进入 HTML 模式,到文件结尾处恢复。由于此原因,目标文件中需要作为 PHP 代码执行的任何代码都必须被包括在有效的 PHP 起始和结束标记之中。

引自 http://cn2.php.net/manual/zh/function.include.php


另一个就是include的路径,如果路径不对也会失败。