8

我有一个带有图像链接的字符串。

$image_link_raw = 'http://website.com/files/2012/10/image001.png';

现在我想删除http://website.com/files/2012/10/image001.png就像:

$image_link_raw = '/files/2012/10/image001.png';

有没有办法在 PHP 中做到这一点?

4

3 回答 3

15
$path = parse_url($url, PHP_URL_PATH);

parse_url效果很好(并且可以为您提供其他详细信息,例如主机、端口、协议等。)


<?php

  $url = 'http://website.com/files/2012/10/image001.png';

  echo 'URL Parts:' . PHP_EOL;
  var_dump(parse_url($url));

  echo PHP_EOL . 'And specific to path:' . PHP_EOL;
  echo parse_url($url, PHP_URL_PATH);

结果输出

URL Parts:
array(3) {
  ["scheme"]=>
  string(4) "http"
  ["host"]=>
  string(11) "website.com"
  ["path"]=>
  string(27) "/files/2012/10/image001.png"
}

And specific to path:
/files/2012/10/image001.png
于 2012-10-08T19:07:21.093 回答
14

我想我们只是在给出答案吗?

<?php
$image_link_raw = 'http://website.com/files/2012/10/image001.png';
$p=parse_url($image_link_raw);
//print_r($p);
echo $p['path'];
于 2012-10-08T19:08:18.397 回答
6

我会查看 php 中的parse_url函数,它将是['path']值。

于 2012-10-08T19:06:58.617 回答