【为什么相对路径跳转成功,绝对路径就跳转失败?(详见代码)】教程文章相关的互联网学习教程文章

如何使用PHP获取文件相对路径

如何使用PHP获取文件相对路径?本文主要介绍了PHP获取文件相对路径的方法,通过自定义函数实现获取文件相对路径的功能。希望对大家有所帮助。本文实例讲述了PHP获取文件相对路径的方法。分享给大家供大家参考。具体实现方法如下:<?php $a = /a/b/c/d/e.php; $b = /a/b/12/34/c.php; //../../12/34/c.php echo getRelativelyPath($a,$b); //求$b相对于$a的相对路径 function getRelativelyPath($a,$b){ $a=explode(/,$a); $b=expl...

php算法实现相对路径的案例

这篇文章主要介绍了php 算法之实现相对路径的实例的相关资料,希望通过本文能帮助到大家,让大家实现这样的功能,需要的朋友可以参考下php 算法之实现相对路径的实例算出相对路径(相同的目录可以忽略用../ 或者 ./ 表示)实现代码:class Relatively{ private function __construct(){ } /** * 算出相对路径(相同的目录可以忽略用../ 或者 ./ 表示) * @param Strint $path1 * @param Strint $path2 * @return string */ public s...

php获取文件相对路径的方法示例代码

相对路径就是指由这个文件所在的路径引起的跟其它文件(或文件夹)的路径关系。使用相对路径可以为我们带来非常多的便利。这篇文章主要介绍了PHP获取文件相对路径的方法,通过自定义函数实现获取文件相对路径的功能,具有一定参考借鉴价值,具体实现方法如下:<?php $a = /a/b/c/d/e.php; $b = /a/b/12/34/c.php; //../../12/34/c.php echo getRelativelyPath($a,$b); //求$b相对于$a的相对路径 function getRelativelyPath($a,$b){ ...

PHP利用正则表达式将相对路径转成绝对路径的方法

前言大家应该都有所体会,很多时候在做网络爬虫的时候特别需要将爬虫搜索到的超链接进行处理,统一都改成绝对路径的,所以本文就写了一个正则表达式来对搜索到的链接进行处理。下面话不多说,来看看详细的介绍吧。通常我们可能会搜索到如下的链接:<!-- 空超链接 --> <a href=""></a> <!-- 空白符 --> <a href=" " rel="external nofollow" > </a> <!-- a标签含有其它属性 --> <a href="index.html" rel="external nofollow" rel=...

PHP的相对路径问题

在PHP中require,include一个文件时,大都是用相对路径,是个很头疼的问题。 例如: <web>(网站根目录) ├<A>文件夹 │ │ │ └1.php ├<B>文件夹 │ │ │ └2.php └index.php问题:在1.php中通过include(“../B/2.php”)来引入B目录下的2.php文件; 在index.php中通过include(“A/1.php”)来引入A目录下的1.php文件; 运行出来当然会出现问题,找不到../B/2.php文件。 记住一个原则,所有的包含语句最后都转换为以包含文件路径为...

为什么相对路径跳转成功,绝对路径就跳转失败?(详见代码)

1.一个是 echo $_SERVER['HTTP_HOST'].'/home/shop/cate/id/'.$goods['id']" target="_blank">{$goods['name']}另一个是 echo '/home/shop/cate/id/'.$goods['id']" target="_blank">{$goods['name']}2.第一个是绝对路径,但是跳转的页面是空的,但是你刷新一下那个页面,就显示出来了。第二个是相对路径,但是一跳转就直接出来内容了 请问这是为什么?该代码在thinkphp下执行,为thinkphp的模板写法,我遇到的这种问题是所有php都...

PHP文件操作之获取目录下文件与计算相对路径的方法

获取目录下文件1、获取目录下文件,不包括子目录//获取某目录下所有文件、目录名(不包括子目录下文件、目录名) $handler = opendir($dir); while (($filename = readdir($handler)) !== false) {//务必使用!==,防止目录下出现类似文件名“0”等情况 if ($filename != "." && $filename != "..") { $files[] = $filename ; } } } closedir($handler); //打印所有文件名 foreach ($filens as $value) { echo $value.""; } 2、获...

php代码一道求$b相对于$a的相对路径的php代码

php面试题的题目: $a = '/a/b/c/d/e.php'; $b = '/a/b/12/34/c.php'; //计算出 $b 相对于 $a 的相对路径应该是 ../../c/d php面试题的答案: 代码如下:function getRelative($a,$b) { $arr = explode("/",$a); $brr = explode("/",$b); $c = count($arr)-2; $d = count($brr)-2; //之所以减二,一个是不在后面的文件名, //一个是数组的索引是从0开始的,比数组中的第一维的个数要小一 $e = ($c>$d) ? $c:$d; $str1 = $str2 = ; ...

PHP相对路径问题

IIS下 PHP FastCgi的问题 require路径缓存的问题 require系列函数包含相对路径相同 /*IIS下 PHP FastCgi的问题require路径缓存的问题 require系列函数包含相对路径相同 比如:*/  /root/web/config/config.php  /root/web/admin/config/config.php  config.php的代码不相同  /*如下: 依次执行下述代码*/    /root/web目录下php程序代码 : require(config/config.php); ///root/web/config/config.php    ...

相对路径转化成绝对路径

相对路径转化成绝对路径 //相对路径转化成绝对路径 function relative_to_absolute($content, $feed_url) { preg_match('/(http|https|ftp):///', $feed_url, $protocol); $server_url = preg_replace("/(http|https|ftp|news):///", "", $feed_url); //开源OSPhP.COM.CN$server_url = preg_replace("//.*/", "", $server_url); if ($server_url == '') { return $content; } if (isset($protocol[0...

求相对路径方法小研究【图】

如题,求两路径相对路径,求拍砖! /*** 求两路径的相对路径* @param string $patha 路径a* @param string $pathb 路径b* @author Joychao <joy@joychao.cc>* @link http://www.joychao.cc* @return string 相对路径*/function getRelativePath($patha,$pathb){ $arr_a=explode(/,trim(dirname($patha),/)); $arr_b=explode(/,trim(dirname($pathb),/)); $n=min(count($arr_a),count($arr_b));//用最短路径来循环 ...

分享:PHP中require或include时不使用相对路径

require_once(../../lib/some_class.php);这种写法的缺点: 它首先查找指定的php包含路径,然后查找当前目录。 因此会检查过多路径。 如果该脚本被另一目录的脚本包含,它的基本目录变成了另一脚本所在的目录。 另外一个问题就是:当定时任务运行该脚本,它的上级目录可能就不是工作目录了。 因此,最佳选择是使用绝对路径,例如:define(ROOT , /var/www/project/);require_once(ROOT . ../../lib/some_class.php);以上代码定义了一...

php计算两个文件的相对路径的实现代码

如何计算两个文件之间的相对路径呢?用php实现是很简单的,这里分享一段代码,可以计算两个文件的相对路径,有需要的朋友不妨参考下。计算出两个文件的相对路径。 例如,有文件如下: $a="/a/b/c/d/e.php"; $b="/a/b/12/34/c.php"。 那么如何计算出B相对于A的相对路径呢? 代码:$counta) {while ($countb > $counta) {$path .= "../";$countb --;}}// 寻找第一个公共结点for ($i = $countb - 1; $i >= 0;) {if ($patha[$i] != $pa...

相对路径转网络绝对路径(支持二级域名)./a.jpg=&amp;gt;http://www.w.com/a.jpg

昨天在写用迅雷下载时,发现 ./a.jpg的文件转成迅雷不是网络地址,然后写了一个方法转换。目前处在PHP基础层次,有不足还望请教。会自动判断当前的域名与主域名,以下是形式:./a.jpg => http://about.w.com/a.jpg;../a.jpg => http://www.w.com/a.jpg/** * 相对路径转网络绝对路径 * @param string $file * @return string */function dirToHttpUrl($file) { //判断文件是否存在 if (!file_exists($file)) { return false; } //...

求两个目录的相对路径

求两个目录的相对路径,不限制路径深度/** * 输出$b相对于$a的相对路径($a) * 不限限制路径深度,没有做什么优化,只是实现功能 */function getPath($a, $b){ $aArr = explode(/, dirname($a)); $bArr = explode(/, dirname($b)); $aLen = count($aArr); $bLen = count($bArr); $len = max($aLen, $bLen); $k = 0; for($i = 0; $i < $len; $i++) { if($k == 0) { if(isset($aArr[$i]) && ($aArr[$i] != $bArr[$i])) { $d .= ...