我有一个文件夹结构如下:
mydomain.com
->Folder-A
->Folder-B
Run Code Online (Sandbox Code Playgroud)
我有一个来自Database的字符串'../Folder-B/image1.jpg',它指向Folder-B中的图像.
在Folder-A的脚本里面,我使用dirname(FILE)来获取文件名,我得到了
mydomain.com/Folder-A
.在这个脚本里面,我需要得到一个字符串'mydomain.com/Folder-B/image1.jpg
.我试过了
$path=dirname(__FILE__).'/'.'../Folder-B/image1.jpg';
Run Code Online (Sandbox Code Playgroud)
这显示为 mydomain.com%2FFolder-A%2F..%2FFolder-B%2Fimage1.jpg
这是一个Facebook分享按钮,这无法获取正确的图像.任何人都知道如何正确地获得路径?
编辑:我希望得到一个网址>>> mydomain.com%2FFolder-B%2Fimage1.jpg
Pet*_*tah 168
对于PHP <5.3使用:
$upOne = realpath(dirname(__FILE__) . '/..');
Run Code Online (Sandbox Code Playgroud)
在PHP 5.3到5.6中使用:
$upOne = realpath(__DIR__ . '/..');
Run Code Online (Sandbox Code Playgroud)
在PHP> = 7.0中使用:
$upOne = dirname(__DIR__, 1);
Run Code Online (Sandbox Code Playgroud)
Bas*_*ijk 16
如果您碰巧拥有PHP 7.0+,您可以使用级别.
dirname( __FILE__, 2 )
使用第二个参数,您可以定义要返回的级别数.
http://php.net/manual/en/function.dirname.php
小智 15
试试这个
dirname(dirname( __ FILE__))
Run Code Online (Sandbox Code Playgroud)
编辑:删除"./",因为它的语法不正确.没有它,它完美地运作.
dirname(__DIR__,level);
dirname(__DIR__,1);
Run Code Online (Sandbox Code Playgroud)
level 是您将返回该文件夹的次数