最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

談?wù)凱HP中相對路徑的問題與絕對路徑的使用

 更新時間:2016年08月16日 16:12:45   投稿:daisy  
經(jīng)??吹接腥瞬仍诹薖HP路徑的坑上面了,感覺有必要來說說PHP中相對路徑的一些坑,以及PHP中絕對路徑的使用,下面一起來看看。

問題描述

首先我們先來看一下我們這個例子的目錄結(jié)構(gòu)以及這三個文件的內(nèi)容

a.php

<?php
include './c/d.php'

b.php

<?php
define('__B', 'this is a test');

c/d.php

<?php
include '../b.php';
var_dump(__B);

在c目錄下面的d.php文件引用了它的上級目錄下的 b.php 文件 單獨運行 c/d.php 的時候不會出問題

但是,如果在和b同級目錄下的a.php引用c/d.php的話就會出問題了

它報錯說的是文件不存在

思考

大概意思就是 a.php 把 c/d.php 引入到 a.php 中后, include '../b.php' 這個路徑就是相對于 a.php 來說的了,然后對于 a.php 來說的這個相對路徑它是不存在的,所以就出現(xiàn)了這個問題

如果一個文件可能在多個地方被引用的時候使用相對路徑就相當容易出問題,然后我們使用絕對路徑能夠輕松解決這個問題。

使用絕對路徑解決問題

如果我們把文件改成如下內(nèi)容

a.php

<?php
include __DIR__.'/../b.php';
var_dump(__B);

b.php

<?php
define('__B', 'this is a test');

c/d.php

<?php
include __DIR__.'/../b.php';
var_dump(__B);

這樣就改成了對文件的絕對路徑進行引用了, __DIR__ 是php5.3開始中就有的預定義的魔術(shù)常量,表示這個文件所在的目錄,然后我們利用這個來可以寫出絕對路徑,在運行a.php和c/d.php的時候都能夠正常執(zhí)行了,如果在php5.3之前都是使用 dirname(__FILE__) 來替代 __DIR___

總結(jié)

以上就是關(guān)于php中相對路徑的問題以及絕對路徑的使用的全部內(nèi)容,希望對大家使用PHP能有所幫助,避免再進入php中相對路徑的坑。

相關(guān)文章

最新評論

吉首市| 扎鲁特旗| 新疆| 枣强县| 石城县| 昆明市| 新晃| 连城县| 韶关市| 沽源县| 乌什县| 建平县| 台南市| 金湖县| 印江| 新兴县| 镇坪县| 岑巩县| 伊宁市| 河池市| 烟台市| 城步| 宾川县| 永川市| 柘城县| 拜泉县| 宁强县| 无棣县| 双鸭山市| 定结县| 黄浦区| 鸡东县| 元谋县| 甘南县| 汶上县| 喜德县| 睢宁县| 绥化市| 大关县| 麦盖提县| 凤山县|