PHP取出字符串中间文本-无错版

何故 471

[aru_24]因工作需要写个小东西,

[aru_13]没有学过PHP,

[aru_39]百度了一下找了一堆,

[aru_45]各种问题,

[aru_43]以下是自己修改后的用着没问题的。

无中文版[aru_15]还是习惯写中文咋办[aru_15]
<?php
    echo(getSubstr("Www.Htm5.Cn",".","."));

    function getSubstr($str, $leftStr, $rightStr)
    {
        if(mb_strlen($str)==0 or mb_strlen($leftStr)==0 or mb_strlen($rightStr)==0) return '';
        $left = strpos($str,$leftStr);
        $right = strpos($str,$rightStr,$left+mb_strlen($leftStr));
        if($left<0 or $right < $left or $left=="" or $right=="") return '';
        return substr($str, $left + strlen($leftStr), $right-$left-strlen($leftStr));
    }
?>
中文版[aru_14]
<?php
    echo(取出中间文本("Www.Htm5.Cn",".","."));
    function 取出中间文本($原内容, $左边文本, $右边文本)
    {
        if(mb_strlen($原内容)==0 or mb_strlen($左边文本)==0 or mb_strlen($右边文本)==0) return '';
        $左位置 = strpos($原内容,$左边文本);
        $右位置 = strpos($原内容,$右边文本,$左位置+mb_strlen($左边文本));
        if($左位置<0 or $右位置 < $左位置 or $左位置 =="" or $右位置 =="") return '';
        return substr($原内容, $左位置 + strlen($左边文本), $右位置-$左位置-strlen($左边文本));
    }
?>

分享