【问题标题】:php include with ".." before file pathphp 在文件路径前包含“..”
【发布时间】:2015-02-10 03:43:08
【问题描述】:

我最近在看一个 php 视频教程,作者正在展示如何包含文件。他正在使用 XAMPP 进行演示,并且有很多文件。

当他展示如何包含文件时,他提到了在文件路径 (/xampp/content/example.html) 前面放置两个点 (..) 的内容,因为这与文件的位置有关假设我已经了解了这个原理,就找到了。但我没有。

谁能解释一下文件路径前有一个点或两个点是怎么回事?

include("/xampp/content/example.html");include("./xampp/content/example.html");include("../xampp/content/example.html"); 有什么区别

【问题讨论】:

    标签: php include-path


    【解决方案1】:

    在Linux/Unix环境下,

    /xampp/content/example.html 表示绝对路径

    ./xampp/content/example.html表示当前目录的相对路径

    ../xampp/content/example.html表示父目录的相对路径

    对于文件夹结构:/var/www/xampp/content/example3.html:

    如果您当前的文件夹是/var/www/...

    • ../(上升 1 级)将是 /var/
    • ./(在当前级别)将是 /var/www/
    • / 将是 /(在 Linux 中,/ 表示服务器的根目录,文件系统的最外层结构)
    • ../../(上升 2 级)将是 /

    有两种类型的路径:相对路径绝对路径

    对于相对路径,它是相对于您当前目录的。对于绝对路径,它与您当前的目录无关。

    【讨论】:

    • 今天还是这样吗?我包含了一个向上两级的 PHP 文件,只有../,但它找到了该文件。如果我输入../../ 会有意义,它会找不到文件。
    • @user2924019 取决于权限。
    【解决方案2】:

    . 表示与执行包含的脚本相同的目录,.. 表示包含脚本的目录的父目录。所以../xampp/content/example.html表示从当前脚本上一层文件夹,然后进入其xampp/content子目录找到example.html

    / 开头的路径是从服务器根目录开始的绝对路径。使用绝对路径会使您的项目更难移动到新目录,因为您需要更新所有路径。相对路径允许您在不更改路径的情况下将所有内容作为一个组移动,因为目录关系将保持不变。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-03-12
      • 2014-04-24
      • 1970-01-01
      相关资源
      最近更新 更多