【问题标题】:Cant figure out how to access my file in another folder无法弄清楚如何访问我在另一个文件夹中的文件
【发布时间】:2016-07-07 08:41:21
【问题描述】:

基本上我的文件 index.php 位于中间某处,而我的图像文件夹位于 3 个文件夹下方,我想访问它,我使用的代码如下所示

$uri = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']

<img src = "'$uri.'/images/dogs/circle/dog1.jpg">

这是在我的代码之后形成的链接

www.dog.com/folder1/folder2/index.php/images/dogs/circle/dog1.jpg

我需要删除 index.php 但我需要它的其余部分,我将如何删除它。

【问题讨论】:

  • 你为什么不直接使用&lt;img src="images/dogs/circle/dog1.jpg"&gt;
  • 确实看起来过于复杂。使用相对路径的好建议!另外,如果你一心想用 PHP 做这件事,还有更简单的方法..
  • 我最初尝试过这种方式,但它不起作用,它可以在我的本地服务器上运行,但是当我将它放到网上时它失败并给我断开的链接
  • 你可以硬编码它:&lt;img src="/folder1/folder2/images/dogs/circle/dog1.jpg"&gt;

标签: php image hyperlink directory


【解决方案1】:

好的,所以我找到了一种方法来完成这项工作

$uri = "http://".$_SERVER['HTTP_HOST'].dirname($_SERVER['PHP_SELF']);
<img src= "'.$uri.'/images/travel.square/dog1.jpg">

【讨论】:

    【解决方案2】:

    你也可以这样做

    $uri = "http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']
    $split=explode("/",$uri);
    array_pop($split);
    $uri=implode("/",$split);
    
    
    
    <img src = "'$uri.'/images/dogs/circle/dog1.jpg">
    

    【讨论】:

      【解决方案3】:

      这可以通过str_replace() 函数轻松实现,该函数将搜索给定字符串并替换匹配的情况。

      下面我们将字符串index.php/ 替换为空,理论上将其从原始字符串中删除。我也选择删除尾部斜杠,因为如果你不是几乎 100% 肯定,你最终会得到www.dog.com/folder1/folder2//images/...

      $uri = str_replace('index.php/','',"http://".$_SERVER['HTTP_HOST'].$_SERVER['REQUEST_URI']);
      

      然后你只需简单地回显出你想要的 html 代码。

      echo '<img src = "'.$uri.'/images/dogs/circle/dog1.jpg">';
      

      【讨论】:

      • 我在这个网站上的访问量还不足以支持或反对投票
      • 无论如何你试试这个?
      • 我现在也将尝试使用相对路径,因为评论我的问题的人说它给了我dog.com/images/dogs/circle/dog1.jpg链接中缺少的文件夹 1 和文件夹 2
      • 你确定这行得通吗?您正在从 $_SERVER['REQUEST_URI'] 换出 index.php/ - 我认为不需要尾部斜杠
      • 仅供参考,有人很可能对此表示反对,因为它是没有上下文/解释/讨论的代码。
      猜你喜欢
      • 2018-08-15
      • 2016-05-10
      • 1970-01-01
      • 1970-01-01
      • 2023-03-15
      • 2020-06-12
      • 1970-01-01
      • 1970-01-01
      • 2015-07-04
      相关资源
      最近更新 更多