我已經編寫了一個PHP函數來獲取具有寬度和高度的視頻嵌入代碼,並允許您指定新的寬度。該功能將使用適當的縮放因子縮小高度。我發現寬度和高度並不總是相鄰的,所以我做了一些我沒有預感的呼叫是不必要的。有沒有更好的方法來清理以下內容?在PHP中優化正則表達式替換
function scale_video($video_embed,$new_width = 200){
preg_match('/width="(\d)*"/', $video_embed, $width);
preg_match('/height="(\d)*"/', $video_embed, $height);
$width = substr($width[0],7,-1);
$height = substr($height[0],8,-1);
$scale_factor = $new_width/$width;
$new_height = floor($height * $scale_factor);
$video_embed = preg_replace('/width="(\d)*"/','width="'.$new_width.'"',$video_embed);
$video_embed = preg_replace('/height="(\d)*"/','height="'.$new_height.'"',$video_embed);
return $video_embed;
}