我的有效 url 可能看起来或多或少像这样
http://someurl.com/some/path/file.pdf
or
http://someurl.com/some/path/file.pdf?param=value
or
http://someurl.com/some/path/file.pdf?param=value&second=val
文件扩展名可以是 .pdf,或其他一些扩展名,如 .jpg 或 .psd,或者什么都没有。
我存储的 url 没有 someurl.com 部分,所以它是 url 的 some/path/file.pdf
部分
如果文件扩展名存在,我如何使用正则表达式知道它?正则表达式是正确的工具吗?
最佳答案
我会使用 parse_url()
和 pathinfo()
。这些是最适合这项工作的函数。
$url = 'http://someurl.com/some/path/file.pdf?param=value';
$path = parse_url($url, PHP_URL_PATH);
$ext = pathinfo($path, PATHINFO_EXTENSION);
var_dump($ext); // string(3) "pdf"
您可以使用正则表达式,但它会更难理解。
关于php - 什么正则表达式会发现文件 url 是否具有特定扩展名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4643601/