dongruolin5324 2011-12-15 04:15
浏览 10
已采纳

从其他链接修复链接url mywebsite

Here in my code:

 <?php
    $urls = array('http://www.website1.com/image1.jpg',
                  'http://www.website2.com/image/image2.jpg',
                  'http://www.website3.com/image/url/image3.jpg'
    );
    while(list($i, $uri) = each($urls)) {
    $urls[$i] = foo($uri);
    }
    print_r($urls);

    function foo($uri) {
    $url = parse_url($uri);
    $paths = explode('/', $url['path']);
    return sprintf("%s://%s/%s", $url['scheme'], $url['host'], end($paths));
    }
    ?>

output

Array
(
    [0] => http://www.website1.com/image1.jpg
    [1] => http://www.website2.com/image2.jpg
    [2] => http://www.website3.com/image3.jpg
)

How to fix output for this result:

Array
    (
        [0] => http://www.mywebsite.com/image1.jpg
        [1] => http://www.mywebsite.com/image2.jpg
        [2] => http://www.mywebsite.com/image3.jpg
    )
  • 写回答

1条回答 默认 最新

  • douduonang3169 2011-12-15 04:23
    关注

    Set the host field to whatever you want.

    function foo($uri) 
    {
        $url = parse_url($uri);
        $paths = explode('/', $url['path']);
        $url['host'] = 'www.mywebsite.com';
        return sprintf("%s://%s/%s", $url['scheme'], $url['host'], end($paths));
    }
    

    Output:

    Array
    (
        [0] => http://www.mywebsite.com/image1.jpg
        [1] => http://www.mywebsite.com/image2.jpg
        [2] => http://www.mywebsite.com/image3.jpg
    )
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?