Hur gör jag detta? Antingen med ny kod eller modifiera den jag redan har nedan.
Tack!!
function video($str)
{
$text = preg_replace('~
https?:// # Required scheme. Either http or https.
(?:[0-9A-Z-]+\.)? # Optional subdomain.
(?: # Group host alternatives.
youtu\.be/ # Either youtu.be,
| youtube\.com # or youtube.com followed by
\S* # Allow anything up to VIDEO_ID,
[^\w\-\s] # but char before ID is non-ID char.
) # End host alternatives.
([\w\-]{10,12}) # $1: VIDEO_ID is exactly 11 chars.
(?=[^\w\-]|$) # Assert next char is non-ID or EOS.
(?! # Assert URL is not pre-linked.
[?=&+%\w]* # Allow URL (query) remainder.
(?: # Group pre-linked alternatives.
[\'"][^<>]*> # Either inside a start tag,
| </a> # or inside <a> element text contents.
) # End recognized pre-linked alts.
) # End negative lookahead assertion.
[?=&+%\w]* # Consume any URL (query) remainder.
~ix',
'<iframe width="560" height="315" src="http://www.youtube.com/embed/$1" frameborder="0" allowfullscreen></iframe>',
$str);
return $text;
}
function video($str)
{
$text = preg_replace('~
https?:// # Required scheme. Either http or https.
(?:[0-9A-Z-]+\.)? # Optional subdomain.
(?: # Group host alternatives.
youtu\.be/ # Either youtu.be,
| youtube\.com # or youtube.com followed by
\S* # Allow anything up to VIDEO_ID,
[^\w\-\s] # but char before ID is non-ID char.
) # End host alternatives.
([\w\-]{10,12}) # $1: VIDEO_ID is exactly 11 chars.
(?=[^\w\-]|$) # Assert next char is non-ID or EOS.
(?! # Assert URL is not pre-linked.
[?=&+%\w]* # Allow URL (query) remainder.
(?: # Group pre-linked alternatives.
[\'"][^<>]*> # Either inside a start tag,
| </a> # or inside <a> element text contents.
) # End recognized pre-linked alts.
) # End negative lookahead assertion.
([?=&+%\w]*) # Extra parameters.
~ix',
'<iframe width="560" height="315" src="http://www.youtube.com/embed/$1#$2" frameborder="0" allowfullscreen></iframe>',
$str);
return $text;
}
Tack, nu funkar det för youtubes korta länkar (youtu.be), men inte för de långa (som jag använde ovan). Där dyker videon upp och sen kommer detta i ren text efter: ";t=1m15s"
Jaså? Jag testade med den adress du skrev i första inlägget och det funkade. Nåja, jag kollar vidare på detta när jag kommer hem från jobbet om ingen annan har svarat innan dess
Jaså? Jag testade med den adress du skrev i första inlägget och det funkade. Nåja, jag kollar vidare på detta när jag kommer hem från jobbet om ingen annan har svarat innan dess