【发布时间】:2017-07-24 23:49:17
【问题描述】:
在这种情况下,eregi() 被替换为什么?
// get value of text inbetween tags
function getContentByTag($tag1, $tag2, $string)
{
if (eregi("$tag1(.*)$tag2", $string, $out)) {
$outdata = $out[1];
}
return $outdata;
}
此帖子不是重复帖子,因为引用帖子中的第三个示例答案是针对该特定用途的。我猜我的用法有所不同,因为引用的帖子答案对我不起作用。
【问题讨论】:
-
我最终使用了:
function getContentByTag($tag1, $tag2, $string) { if (preg_match("'$tag1(.*?)$tag2'si", $string, $out)) { $outdata = $out[1]; } return $outdata; } -
不,假设您的
$tag包含一个'字符。您将收到与/相同的警告/错误。使用preg_match('/' . preg_quote($tag1, '/') . '(.*?)' . preg_quote($tag2, '/') . '/si', $string, $out)。 -
好的。有你@WiktorStribiżew。会试一试。谢谢。
标签: php preg-match eregi