<?$a=<<<eot
12345<h1><h1>七七七七七七七七七七七七七七七</h1></h1>12345
eot;function rsubstr($fd,$start,$end){
$startpos = strpos($fd,$start)+strlen($start);//9
$endpos = strpos($fd,$end,$startpos)-1;//截取标记
//echo "||$startpos-$endpos ||";
echo substr($fd,$startpos,$endpos-$startpos);
}
echo rsubstr($a, '<h1>','</hl>' );
?>数学问题哈哈……
12345<h1><h1>七七七七七七七七七七七七七七七</h1></h1>12345
eot;function rsubstr($fd,$start,$end){
$startpos = strpos($fd,$start)+strlen($start);//9
$endpos = strpos($fd,$end,$startpos)-1;//截取标记
//echo "||$startpos-$endpos ||";
echo substr($fd,$startpos,$endpos-$startpos);
}
echo rsubstr($a, '<h1>','</hl>' );
?>数学问题哈哈……
12345bb七七七七七七七七七七七七七七七1aeeabc12345
eot;function rsubstr($fd,$start,$end){
$startpos = strpos($fd,$start)+strlen($start);//9
$endpos = strpos($fd,$end,$startpos)-1;//截取标记
//echo "||$startpos-$endpos ||";
echo substr($fd,$startpos,$endpos-$startpos);
}
echo rsubstr($a, 'bb','abc' );
?>截的结果根本不对。
12345bb七七七七七七七七七七七七七七七1aeeabc12345
eot;
function rsubstr($str, $start, $end)
{
$pos = strpos($str, $start);
if($pos === false) return "";
$a = $pos + strlen($start);
$b = strpos($str, $end, $a);
if($b === false) return "";
return substr($str, $a, $b - $a);
}
echo rsubstr($a, 'bb','abc' );
echo rsubstr($a, '<h1>','</hl>' );
这行代码中</hl>应该是</h1>;
把数字1写成字母l了
$a=<<<eot
aaaaaaaa zairwolf七弦月b/h1a</td>
eot;$b=array('zairwolf','b/hla');echo rsubstr($a,$b[0],$b[1]);function rsubstr($fd,$start,$end){
$startpos = strpos($fd,$start)+strlen($start);
$endpos = strpos($fd,$end);
Return substr($fd,$startpos,$endpos-$startpos);
}