作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我的网络文件夹中有几个文件,包括这两个:
somesubdir 是指向我磁盘上另一个目录的符号链接(symbolic link),路径名为,呃,假设是 /anywhere/else。
在include.inc.php里面,是这样写的:
<?php
require_once "../settings.inc.php";
?>
在我看来,应该包含/mydocroot/include/settings.php...但是猜猜会发生什么:PHP 试图包含/anywhere/settings.inc.php,代替 /mydocroot/include/settings.inc.php。
似乎 PHP 会自动解析符号链接(symbolic link)。
如何避免这种情况并包含我的 settings.inc.php 文件?
最佳答案
我刚刚遇到了类似的问题。您可以使用 $_SERVER['SCRIPT_FILENAME']
变量来显示请求的文件,因此在您的情况下它将是 /mydocroot/include/somesubdir/include.inc.php
,即使 somesubdir
是一个符号链接(symbolic link)。包含一个低一级的文件而不是做
require_once "../settings.inc.php";
这样做:
require_once dirname(dirname($_SERVER['SCRIPT_FILENAME'])).DIRECTORY_SEPARATOR."settings.inc.php"
关于php - 如何在 PHP 中获取符号链接(symbolic link)的原始路径?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9736948/
我是一名优秀的程序员,十分优秀!