// gets video ID from URL
$url = "http://vimeo.com/12345678";
preg_match("/vimeo.*\/(\d+)/i", $url, $vimeoID);
var_dump($vimeoID);
变量转储:
array(0) {
}
它在这里工作,所以我错过了什么?
对我来说按预期工作。我明白了。。
array(2) {
[0]=>
string(18) "vimeo.com/12345678"
[1]=>
string(8) "12345678"
}
更具体地使用您的正则表达式以防止贪婪表达式:
preg_match(":vimeo.\w{2,4}/(\d+):i", $url, $vimeoID);
尝试这个:
preg_match("/vimeo\.com\/([0-9]{1,})/i", $url, $vimeoID);