/** * Refactors URLs like these: * - http://player.vimeo.com/video/20830433 * * in such form: * - http://www.vimeo.com/20830433 * * @param string $url Url to prepare. * @return string Prepared url. */ public static function prepareUrl($url, array $options = []) { $url = parent::prepareUrl($url); if (preg_match('#player\\.vimeo\\.com/video/(?<id>[0-9]+)#i', $url, $matches)) { $url = 'http://www.vimeo.com/' . $matches['id']; } return $url; }
/** * */ public function testPrepare() { $this->assertEquals('valid', OEmbed::prepareUrl('valid#anchor')); $this->assertEquals('valid', OEmbed::prepareUrl('valid?argument=value')); $this->assertEquals('valid', OEmbed::prepareUrl('valid?argument=value#anchor')); }