如何在php中解析定义的字符串?

sha*_*aka 0 php string parsing

在下面的URL中,我试图将"scid ="和"pid ="之后出现的所有字符串解析为2个不同的变量.与pid和scid相关联的两个数字每次都没有固定的位数(它们会改变).我正在通过以下方式解决问题:找到"pid ="的位置并从此位置之后解析出字符串,直到下一个"&".我该怎么做呢?

http://oldnavy.gap.com/browse/product.do?cid=78425&vid=1&pid=113855&scid=113855012

dec*_*eze 6

parse_str(parse_url($url, PHP_URL_QUERY), $values);

echo $values['scid'];
echo $values['pid'];
Run Code Online (Sandbox Code Playgroud)

请参阅http://php.net/parse_strhttp://php.net/parse_url.