php preg_replace поменять высоту и ширину фрейма - PullRequest
0 голосов
/ 01 декабря 2011

Я пытаюсь заменить высоту и ширину HTML-кода iframe при сохранении в базе данных. Я посмотрел на функцию preg_replace и выражения PCRE, но не могу разобраться. Ниже перечислены мой код и пример ввода

$pattern1 = '/width="[0-9]*"/';
$pattern2 = '/height="[0-9]*"/';
$subject  = '<iframe src="http://player.vimeo.com/?title=0&amp;byline=0&amp;portrait=0" width="400" height="300" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe>';

$returnValue = $preg_replace(array($pattern1, $pattern2), array('width="200"','height="200"'), $subject);

Любая помощь будет высоко ценится!

Ура, ребята!

Ответы [ 2 ]

1 голос
/ 01 декабря 2011

Вы ставите $ перед функцией.

$returnValue = preg_replace(array($pattern1, $pattern2), array('width="200"','height="200"'), $subject);

Ваш сценарий может быть упрощен с помощью следующего:

$returnValue = preg_replace('/(width|height)="[0-9]*"/g', '$1="200"', $subject);
1 голос
/ 01 декабря 2011

Поскольку вы имеете дело с HTML, я бы предложил использовать возможности PHP DOM - http://php.net/manual/en/book.dom.php. Regex редко дает ответ при работе с HTML.

...