我使用了preg_replace這樣,但具有下列問題:PHP正則表達式的preg_replace轉換YouTube網址嵌入URL版本
$pattern = '#http(s)://(www\.)?youtube\.com/watch\?v=([^ &\n]+)(&.*?(\n|\s))?.+#i';
$replacement = 'http://www.youtube.com/v/$3';
$final = preg_replace($pattern, $replacement, 'http://www.youtube.com/watch?v=Bf3iBtURGxk');
echo $final;
輸出http://www.youtube.com/watch?v=Bf3iBtURGxk [並未在所有的工作]
$final = preg_replace($pattern, $replacement, 'https://www.youtube.com/watch?v=Bf3iBtURGxk');
echo $final;
輸出http://www.youtube.com/v/Bf3iBtURGx [作品!但截斷最終字符!]