owz2004 — 2010-07-12T18:40:36-04:00 — #1
Hi I have a site which allows users to enter their details along with a youtube video link. This then gets added to a database. I want a page which displays all the submitted videos, using the Youtube API..
I've worked out how to pull the Videoentry meta data to create thumbnails for a video.. but I want to grab the full url which the user entered from my database.. run it through some regular expressions to get rid of the http://www.youtube.com/watch?v=TF3fCM0c7xE(red part) and store the id in a variable. I want to then call the meta data based on the video id using the:
$videoEntry = $yt->getVideoEntry('TF3fCM0c7xE');
Can anyone help me with this?
salathe — 2010-07-13T03:58:09-04:00 — #2
Force Flow, good suggestion with [parse_url() to get the query string. However, why explode/substr when you could make good use of [url=http://php.net/parse_str]parse_str()](http://php.net/parse_url)?
$url = 'http://www.youtube.com/watch?v=TF3fCM0c7xE';
parse_str(parse_url($url, PHP_URL_QUERY), $query);
$video_id = isset($query['v']) ? $query['v'] : NULL;
Of course, Owz2004, if you really want/need a regular expression to do this for you then just let us know. (:
force — 2010-07-12T20:16:16-04:00 — #3
You can use this:
And use explode() with the & symbol on the query section of the URL.
Then, search exploded array for 'v=' and retrieve the value following 'v=' using substr().