【问题标题】:How to get an URL of an image which has been stored on server如何获取已存储在服务器上的图像的 URL
【发布时间】:2012-05-02 12:45:38
【问题描述】:

这一定很简单,但我不知道如何从服务器获取图像的 URL。

假设我有一个名为 www.example.com 的域,并且图像已存储在我的

htdocs>www>resources>userid>images>image.jpg

所以,我想上传一张图片并通过 php 脚本将其保存到我的图片文件夹中,然后将该图片的 URL 返回给浏览器,例如,

www.example.com/.../.../images/image.jpg

有没有获取文件URL的php函数?

编辑:

看了答案后,我想我应该更加澄清自己。误会真的很抱歉,

我想要的帮助是:如果域名不是静态的,我的意思是您可以下载我的图片上传插件并将其附加到您的网站,但现在它应该动态获取域名和 http图片的路径。

【问题讨论】:

  • 我不明白。你的脚本知道它保存文件的路径,所以它也应该知道 URL。
  • @bažmegakapa,对不起,我已经更新了我的问题

标签: php html url image-uploading


【解决方案1】:

由于我没有你的插件,我不知道你的代码流程。下面是我的猜测,希望大家可以根据自己的代码进行修改。

假设我将您的插件下载到我的网站并使用它上传图像。可以这样获取图片路径:

<?php
$upload_path = 'PATH_WHERE_IMAGE_IS_UPLOADED';
$image_name = 'NAME_OF_THE_UPLOADED_IMAGE';

$relative_path = $upload_path . DS . $image_name;

$path = str_replace( $_SERVER['DOCUMENT_ROOT'], $_SERVER['SERVER_NAME']
                                                            , $relative_path );

$path = 'http://' . $path; // this is where image is uploaded
?>

注意:这假设上传目录在 webroot 中。

希望这会奏效。

【讨论】:

  • @Craftero - 我修改了我的回复。请看一看。
  • 哦,所以我们可以使用 $_SERVER[] 似乎有助于获取全局变量。谢谢大佬!
【解决方案2】:

试试这个

$image='name of your image uploaded';
$imageurl='http://www.example.com/images'.$image;
echo '<input type=text name="image" value="'.$imageurl.'" disabled />;

【讨论】:

    【解决方案3】:

    已编辑

    如果你有例如:

    $domain = $_SERVER['SERVER_NAME'];
    $uploadPath = "/htdocs/www/resources/userid/images/image.jpg"
    
    // replace "/htdocs/www", with an empty string
    $subdir = str_replace("/htdocs/www", "", $uploadPath);
    
    $url = $domain.$subdir;
    

    【讨论】:

      【解决方案4】:

      您可以查看 PHP 函数 move_uploaded_file() 的手册页。如果我了解您的问题,就会有解决方案。

      【讨论】:

        猜你喜欢
        • 2017-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-10-08
        • 2019-12-31
        • 2011-06-26
        相关资源
        最近更新 更多