如何用php获取文件的相对路径

2024-01-28

我正在尝试捕获文件的相对路径以创建共享链接。 从我的httpdocs网络服务器上的文件夹,我的文件在这里:

jack/single/uploads/folder1/image.jpg

The var $dir . '/' . $file给我这个输出:

uploads/folder1/image.jpg

realpath($dir . '/' . $file给我这个输出:

/home/vhosts/example.com/subdomains/develop3/httpdocs/jack/single/uploads/folder1/image.jpg

我想要实现的是这个输出:

`http://develop3.example.com/jack/single/uploads/folder1/image.jpg`

我怎样才能实现这一点,以便我可以创建共享链接?


你可以使用preg_replace的输出realpath替换所有内容httpdocs与您网站的网址:

echo preg_replace('#^' . preg_quote($_SERVER['DOCUMENT_ROOT']) . '[\\\\/]#', "{$_SERVER['HTTP_HOST']}/", realpath('test6.php')) . "\n";
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何用php获取文件的相对路径 的相关文章

随机推荐

  • Invoke-RestMethod 错误:无法发送正文类型

    我正在尝试使用 Invoke RestMethod 从 Freshdesk 获取门票 我收到的错误是 Invoke RestMethod 无法发送具有此动词类型的内容正文 我的函数如下所示 function opentickets Body
  • django-rest-framework POST 上的“此字段是必需的”

    每当我发布到 django rest framework DRF 端点时 我都会不断收到 HTTP 400 Bad Request offeror organization This field is required 回复 但是 考虑到下
  • 将 ActivityGroup 应用程序转换为使用 Fragments/FragmentGroup

    我有一个应用程序 我迫切需要从使用旧的 ActivityGroup 类转换为 Fragments 但我不知道该怎么做 下面是我现在使用的代码示例 谁能提供一些关于我应该采取哪些步骤来开始将其切换为使用 Fragments FragmentM
  • 鼠标按钮按下过多

    我想只要按住鼠标右键即可放大某个对象 现在的问题是我每次想要缩放时都必须单击它 有没有办法可以修改我的代码 以便在按住按钮而不是单击按钮时它会缩放 void mouse int button int state int x int y Sa
  • 通过 Maven/TeamCity 运行 IntelliJ 检查

    我有一个 Maven 项目 我正在尝试配置 TeamCity 来运行IntelliJ 的检查 http confluence jetbrains net display TCD6 Inspections on it TeamCity 的文档
  • 如何在 AngularJS 中使用动态模板创建指令?

    如何使用动态模板创建指令 use strict app directive ngFormField function compile return transclude true scope label template
  • App Engine 和 Google Drive API

    我已经使用应用程序引擎工作了几个星期 现在我正在尝试做一些新的事情 我想显示用户最新 25 个文档的列表 但我不知道该怎么做 有人能给我一些信息吗 我有一个应用程序设置 1 可以使用Google Drive API 2 用户必须登录才能使用
  • 插入 C# MongoDB 中的嵌套数组

    我有以下内容document在一个名为的集合中Users在 MongoDB 中 我正在尝试插入一个
  • 通过正确定义索引列表来提高代码效率

    我问了这个问题通过重新构建 if 语句 do 循环来避免重复代码 https stackoverflow com questions 53289143 avoid duplicating code by re structuring if
  • Selenium 3.0 ExpectedConditions 问题

    Using a click 实现如下 selenium 的行为就像单击了按钮一样 并期待下一个屏幕 但网页不会收到点击 因此不会弹出下一个屏幕 我不太明白这是怎么回事 也许有些人以前遇到过这个问题 点击实现如下 public static
  • 检查 Oracle 中是否存在行的最快查询?

    我正在使用 Oracle 并且有一个非常大的表 我需要检查是否存在满足一些简单标准的任何行 使用简单的 SQL 来解决此问题的最佳方法是什么 这是我最好的猜测 虽然对于我的目的来说它可能足够快 但我很想学习一种规范的方法来基本上实现 SQL
  • 包 org.apache.axis2 不存在

    我正在尝试导入包 import org apache axis2 context ConfigurationContext import org apache axis2 description AxisService import org
  • zend框架中的Zend_form_element_select onchange

    我有一个名为 createDevice php 的表单 class Admin Form CreateDevice extends Zend Form public function init this gt setName Create
  • 为什么“openssl pkcs12 -in keystore.p12 -out client-certificate.pem -clcerts -nokeys”需要 -nokeys

    我正在使用 openssl 生成客户端证书和密钥 稍后将在与 cUrl 的相互身份验证中使用它们 我正在使用以下命令来生成客户端证书 openssl pkcs12 in keystore p12 out client certificate
  • 像命令式程序一样跟踪 Haskell 中的程序变量

    每次用户与我的程序交互时 我很难找出如何进行更改 很难解释 所以这里有一个例子 Haskell wxhaskell simulate Int gt Frame gt IO simulate qNr window do fdata lt re
  • 将字符串分成两半

    我正在制作一个新的转换软件来隐藏消息 为了好玩 我制作了一个二进制和十进制转换类 我的想法是 用户输入字符串 它将全部转换为二进制格式 然后将其分成两半 将一半转换为十进制 然后再次将字符串加在一起 使其成为二进制和十进制的混合 在其他版本
  • 使用 Xcode 将 Swift 交叉编译到 Linux?

    假设我有一个使用 Swift 和一些 C 语言的 Xcode 项目 该项目使用的所有框架 依赖项在两个平台上都可用 有没有一种简单的方法来告诉 Xcode 生成 framework 或者只是为树莓派构建整个项目 None
  • 通过发送者在 Swift 上获取按钮按下的 ID

    所以我有一个带有 3 个按钮的故事板 我只想为所有这 3 个按钮创建 1 个操作 并根据它们的标签 id 决定要做什么 有没有办法为每个按钮获取某种标识符 顺便说一句 它们是图像 因此没有标题 IBAction func mainButto
  • Python 3.6 quit() 移植到 exe 后不起作用

    我有一个小的 tkinter gui 可以生成一些报告 我在其中内置了一个退出按钮 当我启动脚本时 该按钮工作正常 但我使用 cx freeze 将其转换为 exe 并且除了退出按钮之外 整个程序都在工作 def quits quit 我创
  • 如何用php获取文件的相对路径

    我正在尝试捕获文件的相对路径以创建共享链接 从我的httpdocs网络服务器上的文件夹 我的文件在这里 jack single uploads folder1 image jpg The var dir file给我这个输出 uploads