Php 在';之后删除所有内容';如果发生

Php 在';之后删除所有内容';如果发生,php,Php,我有网址https://instagram.com/p/7XEvAXLTaDvhyAX4DJORqLi7857T-mtP_C8RY0/?taken-by=Porcelainstrom,我只需要从URL获取7XEvAXLTaDvhyAX4DJORqLi7857T-mtP_C8RY0,这样它就可以成为表名 但并非所有URL都会包含尾随的/?take by=porcelainstrom(或其他字符串) 我可以使用trim删除url的初始部分 $trimmed = trim($_SESSION['URL

我有网址
https://instagram.com/p/7XEvAXLTaDvhyAX4DJORqLi7857T-mtP_C8RY0/?taken-by=Porcelainstrom
,我只需要从URL获取
7XEvAXLTaDvhyAX4DJORqLi7857T-mtP_C8RY0
,这样它就可以成为表名

但并非所有URL都会包含尾随的
/?take by=porcelainstrom
(或其他字符串) 我可以使用trim删除url的初始部分

$trimmed = trim($_SESSION['URL'], "https://instagram.com/p/");
但我无法移除尾随部分

$trimmed = substr($variable, 0, strpos($variable, "\/\?"));
变量转储的输出($trimmed)


当URL的尾部出现时,如何删除它?

如何正确解析URL以获取路径

$path = parse_url($_SESSION['URL'], PHP_URL_PATH);
然后可以使用获取路径的最后一部分:

$value_you_want = basename($path);

效果很好。PHP有几个警告,它做得非常好,这就是其中之一!
$value_you_want = basename($path);