PHP採集利器:依据開始字符串和结束字符串截取须要的採集内容数据

PHP採集利器:依据開始字符串和结束字符串截取须要的採集内容数据

function strCutByStr(&$str, $findStart, $findEnd = false, $encoding = 'utf-8'){
        if(is_array($findStart)){
            if(count($findStart) === count($findEnd)){
                foreach($findStart as $k => $v){
                    if(($result = strCutByStr($str, $v, $findEnd[$k], $encoding)) !== false){
                        return $result;
                    }
                }
                return false;
            }else{
                return false;
            }
        }
         
        if(($start = mb_strpos($str, $findStart, 0, $encoding)) === false){
            return false;
        }
         
        $start += mb_strlen($findStart, $encoding);
         
        if($findEnd === false){
            return mb_substr($str, $start, NULL, $encoding);
        }
         
        if(($length = mb_strpos($str, $findEnd, $start, $encoding)) === false){
            return false;
        }
         
        return mb_substr($str, $start, $length - $start, $encoding);
    }

举例:

$str = '1那是一场23我问问4567890维稳';

echo (strCutByStr($str, '那是', '稳'));//输出 一场23我问问4567890维


原文地址:https://www.cnblogs.com/yfceshi/p/6747923.html