解决的问题:include(hint.php?/…/…/…/…/ffffllllaaaagggg)为什么能够访问到ffffllllaaaagggg文件
我先写总结:include 函数把hint.php? 当成一个文件夹(不论你是否真实存在,include函数都认为它有) ,然后在进行一层一层地返回上级
首先,你先理解好这些内容,这些内容网上都有解析,也都很详细,这里不做重点进行解释
我们重点解释一下 include(hint.php?/…/…/…/…/ffffllllaaaagggg)为什么能够调取ffffllllaaaagggg这个文件
include 会把hint.php?当成一个文件夹(无论是否真实存在,include函数不会检测你这文件夹是否存在)之后从hint.php?文件夹中依次返回上级
okk,为了验证这一猜想我们继续测试
我们在每一层都存一个4.txt,其内容为各自的存储路径
例如:
我们在D:\phpstudy_pro\WWW\test下创建个test3.php其内容为
然后,开搞
首先,asdasd是我随便输入的(实际上不存这个文件夹),然后include(asdasd/…/4.txt) include函数进入与test3.php同级的asdasd文件夹,然后访问上一级目录的4.txt,也就是与test3.php同级的4.txt.这也就验证,我刚在所说的include 会把hint.php?当成一个文件夹(无论是否真实存在,include函数不会检测你这文件夹是否存在)之后从hint.php?文件夹中依次返回上级