include 该如何理解??

石头和面包 发布于 2014/04/16 22:00
阅读 249
收藏 0
PHP

刚刚看了魔术常量__FILE__的解释,一个a.php文件 echo __FILE__,然后b.php文件include a.php文件,__FILE__依然输出的是a.php文件所在目录和文件名。

然后我就想,这个include它是怎么做的。1.它是相当于把a.php文件中的代码运行之后的结果返还给b.php,就像php和HTML一样;2.还是相当于把整个a.php代码copy到include所在行,然后运行,得到结果?

按__FILE__的到的结果推理,理应是1符合include的解释。但我知道1是不正确的,2又不符合__FILE__的结果。

谁能解释下include???

加载中
0
开源中国最帅没有之一
开源中国最帅没有之一
file的路径本来就是当前文件所在的路径
0
ththththht
ththththht

你可以理解为b.php 和 a.php抱在一起了,但是它们的脚还放在原来的地方 。

0
netwinder
netwinder

a.php  运行后   __FILE__已经赋值了   b.php再include   __FILE__当然是a.php文件所在目录和文件名了

0
hphper
hphper

这好像与include无关,与魔术常量有关吧

0
Barb1eQ
Barb1eQ

__FILE__ :文件的完整路径和文件名。如果用在被包含文件中,则返回被包含的文件名。自 PHP 4.0.2 起,__FILE__总是包含一个绝对路径(如果是符号连接,则是解析后的绝对路径),而在此之前的版本有时会包含一个相对路径。

0
阳光test
阳光test

hi,php解释器是逐行执行php代码的,解释一行执行一行,所以当出现include 'a.php'的时候,解释器的pointer就转到了a.php的第一行,然后逐行执行,如果这里面又有include,那么也是一样,一直到所有内容被解释执行完成。

0
JPer
JPer

include 你可以这么理解,就是机器自动将你include路径里面的文件代码copy了一份,然后粘贴到引用他的页面里面;

0
梅开源
梅开源

看php源码和解读文,over

石头和面包
石头和面包
看源码,没那个功力唉
返回顶部
顶部