extracting facebook photo id from a LONG url
我已经在该网站上搜索了如何从以photo.php开始的url中提取facebook id?fbid =,但是我有一个很长的url并且知道如何获取照片id
Example1:photo.php?fbid = 10151987845617397(完整的URL存储在$ url变量中,我相信该变量是使用preg_match检查的)
1 |
上面的代码获取Facebook id 10151987845617397,并将其放在变量$ pid中。
如果我的网址很长,该如何更改代码?
这是网址
范例2:https://www.facebook.com/nokia/photos/a.338008237396.161268.36922302396/10151987845617397/?type = 1
简单的解决方案,而且可读性强:将整个字符串用作正则表达式,在要匹配的内容周围使用
1 2 3 4 5 6 7 8 9 10 | // $tmp[1] = www or nothing // $tmp[2] ="user" (i.e nokia) // $tmp[3] = album id? // $tmp[4] = photos // $tmp[5] = Long url as requested function extract_id_from_album_url($url) { preg_match('/https?:\\/\\/(www.)?facebook\\.com\\/([a-zA-Z0-9_\\- ]*)\\/([a-zA-Z0-9_\\- ]*)\\/([a-zA-Z0-9_\\.\\-]*)\\/([a-zA-Z0-9_\\-]*)(\\/\\?type=1&theater\\/)?/i', $url, $tmp); return isset($tmp[5]) ? $tmp[5] : false; } |
需要使用
反斜杠以确保将