首页 > 后端开发 > PHP问题 > php如何实现相对路径转绝对路径

php如何实现相对路径转绝对路径

王林
发布: 2023-03-02 09:04:02
原创
3699 人浏览过

php实现相对路径转绝对路径的方法:可以通过preg_replace()函数来实现。preg_replace()函数可以执行一个正则表达式的搜索和替换。若搜索目标是字符串数组,则该函数返回一个数组。

php如何实现相对路径转绝对路径

我们可以通过preg_replace()函数来实现相对路径转绝对路径。

(推荐学习:php教程

函数介绍

preg_replace() 函数执行一个正则表达式的搜索和替换。

函数语法

mixed preg_replace ( mixed $pattern , mixed $replacement , mixed $subject [, int $limit = -1 [, int &$count ]] )
登录后复制

搜索 subject 中匹配 pattern 的部分, 以 replacement 进行替换。

参数说明:

  • $pattern: 要搜索的模式,可以是字符串或一个字符串数组。

  • $replacement: 用于替换的字符串或字符串数组。

  • $subject: 要搜索替换的目标字符串或字符串数组。

  • $limit: 可选,对于每个模式用于每个 subject 字符串的最大可替换次数。 默认是-1(无限制)。

  • $count: 可选,为替换执行的次数。

返回值

如果 subject 是一个数组, preg_replace() 返回一个数组, 其他情况下返回一个字符串。

如果匹配被查找到,替换后的 subject 被返回,其他情况下 返回没有改变的 subject。如果发生错误,返回 NULL。

代码实现:

//相对路径转化成绝对路径
<?
function relative_to_absolute($content, $feed_url) { 
preg_match(&#39;/(http|https|ftp):///&#39;, $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 == &#39;&#39;) { 
        return $content; 
    } 
    if (isset($protocol[0])) {
//开源代码OSPhP.COm.CN
$new_content = preg_replace(&#39;/href="//&#39;, &#39;href="&#39;.$protocol[0].$server_url.&#39;/&#39;, $content); 
$new_content = preg_replace(&#39;/src="//&#39;, &#39;src="&#39;.$protocol[0].$server_url.&#39;/&#39;, $new_content);  //开源OSPhP.COM.CN
    } else { 
$new_content = $content; 
    } 
    return $new_content; 
} 
?>
登录后复制

以上是php如何实现相对路径转绝对路径的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板