PHP передает аргумент функции внутри preg_replace - PullRequest
0 голосов
/ 02 апреля 2011

Привет, у меня есть что-то вроде этого:

$content = preg_replace('#(\s*)\<pre(.*?)\>(.*?)\</pre\>(\s*)#sie', 'dostuff(\'\\3\', \'\\2\', $content, \'\', \'\\1\', \'\\4\');', $content);

и

$content = preg_replace('#(\s*)\<code(.*?)\>(.*?)\</code\>(\s*)#sie', 'dostuff(\'\\3\', \'\\2\', $content, \'\', \'\\1\', \'\\4\');', $content);

Как я могу передать аргумент истина / ложь в функцию dostuff внутри, в зависимости от того, какой элементregexed?Если это <pre>, чтобы быть правдой, и если это <code>, чтобы быть ложью?

1 Ответ

1 голос
/ 02 апреля 2011

Почему вы не используете (pre|code) в своем регулярном выражении? Вы сможете использовать $n или \n ссылку на имя тега HTML и использовать его в качестве аргумента dostuff ().

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...