0

如果我有以下网址:

http://www.mysite.com/games/topgame

我如何使用 php 删除最后一个“/”之后的所有内容?

所以我会留下:

http://www.mysite.com/games/

我试过这个:

    $currentUrl = 'http://www.mysite.com/games/topgame';     
    $newstr = substr($currentUrl, 0, strpos($currentUrl, '/', strpos($currentUrl, '/')+4));
4

4 回答 4

1

尝试这个:

<?php
print_r (dirname('http://www.mysite.com/games/topgame'));
?>
于 2013-04-21T06:23:36.510 回答
0

试试这个代码...

$currentUrl = 'http://www.mysite.com/games/topgame';     
$newstr = substr($currentUrl, 0, strrpos($currentUrl, '/'));

请参阅键盘

于 2013-04-21T06:20:30.973 回答
0
  $newstr = substr($currentUrl, 0, strrchr($currentUrl, '/');
于 2013-04-21T06:22:33.343 回答
0

有几个函数可以从路径中挑选出部分。

喜欢:

  • basename() - 返回路径的尾随名称组件
  • pathinfo() - 返回有关文件路径的信息
  • realpath() - 返回规范化的绝对​​路径名

但也许pathinfo()最适合您的需求:

<?php
$file = 'http://www.mysite.com/games/topgame/cool.php';

$path_parts = pathinfo($file);

echo $path_parts['dirname'] . "<br />";
echo $path_parts['basename'] . "<br />";
echo $path_parts['extension'] . "<br />";
echo $path_parts['filename'] . "<br />"; // since PHP 5.2.0

?>

输出:

http://www.mysite.com/games/topgame
cool.php
php
cool

从这里开始搜索... http://se1.php.net/manual/en/function.pathinfo.php

于 2013-04-21T07:19:08.297 回答