所以测试用例字符串可能是:
http://example.com/?u=ben
Run Code Online (Sandbox Code Playgroud)
要么
http://example.com
Run Code Online (Sandbox Code Playgroud)
我试图在最后一次'/'之后删除所有内容,但前提是它不是'http://'的一部分.这可能吗!?
到目前为止我有这个:
$url = substr($url, 0, strpos( $url, '/'));
Run Code Online (Sandbox Code Playgroud)
但是没有用,先把'/'剥掉一切.
小智 87
你必须使用strrpos函数而不是strpos ;-)
substr($url, 0, strrpos( $url, '/'));
Run Code Online (Sandbox Code Playgroud)
sbe*_*rry 14
您应该使用为此类作业而设计的工具parse_url
url.php
<?php
$urls = array('http://example.com/foo?u=ben',
'http://example.com/foo/bar/?u=ben',
'http://example.com/foo/bar/baz?u=ben',
'https://foo.example.com/foo/bar/baz?u=ben',
);
function clean_url($url) {
$parts = parse_url($url);
return $parts['scheme'] . '://' . $parts['host'] . $parts['path'];
}
foreach ($urls as $url) {
echo clean_url($url) . "\n";
}
Run Code Online (Sandbox Code Playgroud)
例:
·> php url.php
http://example.com/foo
http://example.com/foo/bar/
http://example.com/foo/bar/baz
https://foo.example.com/foo/bar/baz
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
28554 次 |
| 最近记录: |